Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在startCamera()方法(使用xzing库扫描二维码)之后,如何将AdMob横幅添加到相机活动?_Java_Android_Camera_Admob - Fatal编程技术网

Java 在startCamera()方法(使用xzing库扫描二维码)之后,如何将AdMob横幅添加到相机活动?

Java 在startCamera()方法(使用xzing库扫描二维码)之后,如何将AdMob横幅添加到相机活动?,java,android,camera,admob,Java,Android,Camera,Admob,我使用com.google.zxing.Result和me.dm7.barcodescanner.zxing.ZXingScannerView软件包中的一个名为zxing的库来扫描我的新应用程序中的二维码,但是我无法在扫描二维码的相机活动底部放置Admob横幅,我不知道如何让它出现在Camera Acvity中,因为Camera活动似乎没有布局XML来放置admob XML代码 public class MainActivity extends AppCompatActivity impleme

我使用com.google.zxing.Result和me.dm7.barcodescanner.zxing.ZXingScannerView软件包中的一个名为zxing的库来扫描我的新应用程序中的二维码,但是我无法在扫描二维码的相机活动底部放置Admob横幅,我不知道如何让它出现在Camera Acvity中,因为Camera活动似乎没有布局XML来放置admob XML代码

public class MainActivity extends AppCompatActivity implements ZXingScannerView.ResultHandler {

private ZXingScannerView mScannerView;
MarshMallowPermission marshMallowPermission = new MarshMallowPermission(this);

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

/*AdView mAdView = (AdView) findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);*/

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
    if (checkSelfPermission(Manifest.permission.CAMERA)
            != PackageManager.PERMISSION_GRANTED) {

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
            requestPermissions(new String[]{Manifest.permission.CAMERA},
                    MY_REQUEST_CODE);
        }
    }
}

mScannerView = new ZXingScannerView(this);   // Programmatically initialize the scanner view
setContentView(mScannerView);

mScannerView.setResultHandler(this); // Register ourselves as a handler for scan results.
mScannerView.startCamera();         // Start camera
我试着用这段代码把横幅放在活动摄像机的底部,但它不起作用

RelativeLayout mainLayout = (RelativeLayout)findViewById(R.id.main_layout);
RelativeLayout.LayoutParams rlParams = new RelativeLayout.LayoutParams(ActionBar.LayoutParams.MATCH_PARENT, ActionBar.LayoutParams.WRAP_CONTENT);
rlParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, 1);
AdView mAdView = (AdView) findViewById(R.id.adView);
//AdRequest adRequest = new AdRequest.Builder().build();
//mAdView.loadAd(adRequest)
mainLayout.addView(mAdView,rlParams);
// Load the ad:
//AdRequest adRequest = new AdRequest();
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);
扫描仪视图初始化,但不显示横幅,我如何调用相机活动并将横幅放在那里?谢谢你的帮助。谢谢

public void QrScanner(View view) {


mScannerView = new ZXingScannerView(this);   // Programmatically initialize the scanner view
setContentView(mScannerView);

mScannerView.setResultHandler(this); // Register ourselves as a handler for scan results.
mScannerView.startCamera();         // Start camera

而不是使用
setContentView(mScannerView)
,您可以使用
FrameLayout
膨胀您自己的xml,您已经作为
setContentView(R.layout.activity\u main)进行了此操作

因此,添加
activity\u main.xml
,添加
FrameLayout
,添加一个
LinearLayout
容器来承载扫描仪,并将另一个
LinearLayout
作为AdMob横幅的容器

通过调用mscannerLayoutContainerForScanner.addView(mScannerView),在相应的
LinearLayout
运行时中添加视图
mlinearlayoutcainerforadmobbanner.addView(mScannerView)