ZXing找到二维码后如何重启相机

Ake*_*kef 1 android zxing

当 Zxing 发现二维码时,它会将其发送到handleResult功能并停止相机。如果解码后的二维码已保存在我的应用程序中,我需要重新启动相机。如何重新启动相机?

小智 7

如果您使用的是 ZXing ZXingScannerView,则可以stopCameraPreview()stopCamera()处理二维码和/或向用户显示结果时结合使用。当您的应用程序/用户准备再次扫描时,您只需setResultHandler()使用startCamera()和调用resumeCameraPreview()

例子:

public void startScan() { //use this when you want to resume the camera
    if (scannerView != null) {
        scannerView.setResultHandler(this);
        scannerView.startCamera();
        rescan();
    }
}

public void stopScan() { //use this when you want to stop scanning
// it is very important to do that,
// because the camera will keep scanning codes in background
    if (scannerView != null) {
        scannerView.stopCameraPreview();
        scannerView.stopCamera();
    }
}

public void rescan() {
    if (scannerView != null) {
        scannerView.resumeCameraPreview(this);
    }
}
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助 :)