Android 如何始终显示条形码扫描屏幕?

Android 如何始终显示条形码扫描屏幕?,android,barcode-scanner,Android,Barcode Scanner,如何在android中始终显示条形码扫描屏幕 IntentIntegrator integrator = new IntentIntegrator(activity); 首先,您需要将FrameLayout添加到layout.xml中,作为barcodeScannet的容器: <FrameLayout android:id="@+id/barcode_scanner" android:layout_width="match_parent"

如何在android中始终显示条形码扫描屏幕

IntentIntegrator integrator = new IntentIntegrator(activity);   

首先,您需要将
FrameLayout
添加到
layout.xml
中,作为barcodeScannet的容器:

<FrameLayout
        android:id="@+id/barcode_scanner"
        android:layout_width="match_parent"
        android:layout_height="350dp" />
此外,您还需要覆盖
onResume
onPause
以启动和停止摄像头:

@Override
public void onResume() {
    super.onResume();
    mScannerView.setResultHandler(this); // Register ourselves as a handler for scan results.
// aslso check for camera permission here too
}

@Override
public void onPause() {
    mScannerView.stopCamera();           // Stop camera on pause
    super.onPause();
}
然后:

@Override
public void handleResult(Result rawResult) {

    AppLog.logE("result content", rawResult.getText()); // Prints scan results
    AppLog.logE("result name", rawResult.getBarcodeFormat().toString()); // Prints the scan format (qrcode, pdf417 etc.)

   // the resault of barcode will be given as an string rawResult.getText()
   // and you can do whatEver you want with it
   // handleBarcodeResult(rawResult.getText());

    final Handler handler = new Handler();
    handler.postDelayed(new Runnable() {
        @Override
        public void run() {
            mScannerView.resumeCameraPreview(BillPaymentFragment.this);
        }
    }, 2000);
}
最后,当您想启动条形码扫描仪时,只需调用以下代码:

mScannerView.startCamera();

你能多加一点你的代码吗??您使用哪个库进行条形码扫描仪?zxing library IntentIntegrator integrator=新的IntentIntegrator(活动);integrator.setDesiredBarcodeFormats(IntentIntegrator.QR\U代码类型);integrator.setPrompt(“扫描”);积分器.setCameraId(0);积分器。setBeepEnabled(假);integrator.setBarcodeImageEnabled(假);integrator.initiateScan();第一件事:尝试在评论和问题中添加这些代码,否则您将获得更多的反对票;)其次,我在下面写了一些示例代码,希望它能解决您的问题。
mScannerView.startCamera();