提问人:swapnil mane 提问时间:12/5/2022 更新时间:11/18/2023 访问量:904
Flutter - 在 flutter 中扫描后关闭条码扫描器
Flutter - Close barcode scanner after scan in flutter
问:
我正在使用此软件包扫描条形码。它工作正常,但是成功扫描后,我想关闭相机。我搜索了解决方案,但没有解决方案适用于我的情况。这是我的代码。
try {
FlutterBarcodeScanner.getBarcodeStreamReceiver(
'#ff6666', 'Cancel', true, ScanMode.BARCODE)!
.listen((data) {
print(data);
});
} on PlatformException {
// barcodeScanRes = 'Failed to get platform version.';
}
}
答:
1赞
Nazarudin
12/6/2022
#1
您可以通过将此行添加到代码中来关闭扫描页面
if (barcodeScanRes != null){
print(barcodeScanRes);
// this will send your scan result to previous page
// or you can navigate to other page after scan success
Navigator.pop(context, barcodeScanRes);
}
String barcodeScanRes; // put this variable in statefull widget
Future<void> scanQR() async {
try {
barcodeScanRes = await FlutterBarcodeScanner.scanBarcode(
'#ff6666', 'Cancel', true, ScanMode.QR);
// add this line to close scanner or naivigate to other page
if (barcodeScanRes != null){
print(barcodeScanRes);
Navigator.pop(context, barcodeScanRes);
}
} on PlatformException {
barcodeScanRes = 'Failed to get platform version.';
}
if (!mounted) return;
setState(() {
_scanBarcode = barcodeScanRes;
});
}
或者,如果您想在扫描后暂停相机,则可以使用此软件包 https://pub.dev/packages/qr_code_scanner
评论
0赞
Sandeep
6/29/2023
这是单次扫描。问题针对“getBarcodeStreamReceiver”。我也在寻找答案。
评论