在我的应用程序中,QR 码扫描仪充当下一页的意图。 现在的问题是,每当二维码出现在我的相机前时,它就会继续扫描并打开许多相同的页面。(sry,我的英语不好,希望你们能理解情况(。
我希望它只扫描一次,只为我打开一页。
这是我的代码:
barcodeDetector.setProcessor(new Detector.Processor<Barcode>() {
@Override
public void release() {
}
@Override
public void receiveDetections(Detector.Detections<Barcode> detections) {
final SparseArray<Barcode> qrcodes = detections.getDetectedItems();
if(qrcodes.size() != 0)
{
txtResult.post(new Runnable() {
@Override
public void run() {
//Create vibrate
Vibrator vibrator = (Vibrator)getApplicationContext().getSystemService(Context.VIBRATOR_SERVICE);
vibrator.vibrate(1000);
txtResult.setText(qrcodes.valueAt(0).displayValue);
Intent intent = new Intent(User.this,Menu.class);
startActivity(intent);
}
});
}
}
});
谁能帮我修复它?
之后
txtResult.setText(qrcodes.valueAt(0).displayValue);
添加以下内容:
cameraPreview.setVisibility(View.GONE);
cameraSource.stop();
打开新活动后,只需完成当前活动。喜欢这个
Intent intent = new Intent(User.this,Menu.class);
startActivity(intent);
finish();
希望这会有所帮助。