如何在抖动中使用相机预览读取二维码

时间:2018-07-12 09:56:35

标签: flutter

她是我用于显示器的代码,但问题是我对扫描二维码的操作。 请帮助我。

  Widget camera() {
    return Stack(
      alignment: Alignment.center,
      children: <Widget>[
        new Container(
          decoration: BoxDecoration(
              border: Border.all(color: Colors.myColor, width: 1.0)),
          padding: EdgeInsets.all(4.0),
          child: new SizedBox(
            height: MediaQuery.of(context).size.height / 1.5,
            width: MediaQuery.of(context).size.width / 1.5,
            child: new AspectRatio(
              aspectRatio: controller.value.aspectRatio,
              child: CameraPreview(controller),
            ),
          ),
        ),
        new Container(
          height: 100.0,
          width: 100.0,
          decoration: BoxDecoration(
              border: Border.all(color: Colors.myColor, width: 2.0)),
        )
      ],
    );
  }

2 个答案:

答案 0 :(得分:5)

这可以通过使用抖动barcode_scan依赖性来完成。

Future _openQRScanner() async {
try {
  // Below code will open camera preview and return result after qr scan 
  String _content = await BarcodeScanner.scan();
  setState(() => this._content = _content);
} on PlatformException catch (e) {
  if (e.code == BarcodeScanner.CameraAccessDenied) {
    showSnackBar('Please grant camera permission!');
    setState(() {
      this._content = null;
    });
  } else {
    showSnackBar('Error: $e');
    setState(() {
      this._content = null;
    });
  }
} on FormatException {
  showSnackBar('User pressed "back" button before scanning');
  setState(() {
    this._content = null;
  });
} catch (e) {
  showSnackBar('Error: $e');
  setState(() {
    this._content = null;
  });
}
}

enter image description here

enter image description here

请找到repo

如果您想看一看Flutter,可以在我们的companie’s Github页面上找到一些很好的示例。另外,您可以查看我们公司的页面FlutterDevs

答案 1 :(得分:0)

实际上,您需要使用第三方库。 您可以在使用带有thos关键字的google时找到一些:条码扫描器+颤振 一些例子 : barcode_scan qr_mobile_vision