当 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)
希望这可以帮助 :)