1

当我开始使用表单扫描条形码ScannerViewXamarian,它会自动转到手机的后置摄像头。

我想做一个切换相机按钮,将相机从后到前切换,反之亦然。

这可以将 zxing 用于 xamarin 表单吗?

我的选项如下所示:

代码:

//Set the scanner options.
ScannerView.Options = new ZXing.Mobile.MobileBarcodeScanningOptions()
{
    UseNativeScanning = true,
    AutoRotate = true,
    PossibleFormats = new List<ZXing.BarcodeFormat>()
    {
        ZXing.BarcodeFormat.QR_CODE
    },
    TryHarder = true,
    UseFrontCameraIfAvailable = false,
    DelayBetweenContinuousScans = 2000
};

一旦我通过设置开始扫描

ScannerView.IsScanning = true;

环境:

ScannerView.Options.UseFrontCameraIfAvailable = true;

不更换相机。但是我可以这样做

ScannerView = null;
CreateScannerView();
ScannerView.Options.UseFrontCameraIfAvailable = true;
ScannerView.IsScanning = true;

它有效。然而,相机视图完全消失了大约 2 秒钟,然后又回来了。当我XcodeiOS另一个应用程序本地化时,相机视图从未消失,只是翻转相机。我期待这样的事情。

可以换相机吗?

4

1 回答 1

1

我不认为 Zxing 一旦开始扫描就不可能在相机本身之间切换,因此必须事先选择和设置该选项。

 var options = new MobileBarcodeScanningOptions
 {
     AutoRotate = true,
     UseNativeScanning = true,
     TryHarder = true,
     TryInverted = true,
     UseFrontCameraIfAvailable  = true
 };

 var scannedCode = await _scanner.Scan(options);
于 2017-12-22T05:29:15.173 回答