ZXing Xamarin 在 IOS 上形成白色背景

我们在使用 Xamarin.Forms 的 ZXing Barcodescanner 时遇到问题。扫描仪在 Android 上完美运行,但在 IOS 上我看不到相机图像(预览)。如果我将条码放在相机前,扫描仪确实可以扫描 IOS 上的条码,但相机预览只是白色背景。

我尝试使用这些选项,但没有运气。我们使用 Prism.Forms 进行 MVVM。

正如我提到的,我的代码在 Android 上运行良好。以下是一些细节:

  • 两个平台上的权限均已正确设置。

  • NuGets ZXing.Net.Mobile 和 ZXing.Net.Mobile.Forms 也添加到所有三个项目(Android、IOS 和便携式)

  • 我们正在使用 .NET Standard 2.0

  • Xamarin.Forms 版本为 3.4.0

ScannerView.xaml

<forms:ZXingScannerPage xmlns="http://xamarin.com/schemas/2014/forms"

                    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"

                    xmlns:forms="clr-namespace:ZXing.Net.Mobile.Forms;assembly=ZXing.Net.Mobile.Forms"

                    x:Class="App.Portable.View.ScannerView">

<ContentPage.Content>

    <Grid>

        <Grid.RowDefinitions>

            <RowDefinition Height="*"/>

        </Grid.RowDefinitions>

        <forms:ZXingScannerView x:Name="scanner" Grid.Column="0" Grid.Row="0" HorizontalOptions="EndAndExpand" VerticalOptions="FillAndExpand"

                                IsScanning="{Binding IsScanning}"

                                IsAnalyzing="{Binding IsAnalyzing}"

                                Result="{Binding Result, Mode=TwoWay}"

                                ScanResultCommand="{Binding CmdScanResult}"

                                Options="{Binding ScannerOptions}"

        />


        <forms:ZXingDefaultOverlay Grid.Column="0" Grid.Row="0"

                                   TopText="Some title"

                                   ShowFlashButton="False"

                                   BottomText="Some bottom text"

                                   Opacity="0.9"/>

    </Grid>

</ContentPage.Content>


有人在我的代码中发现问题,或者对如何做得更好或至少让它工作有一些建议吗?


慕标5832272
浏览 92回答 1
1回答

慕尼黑5688855

原因:您将ZXingScannerView和ZXingDefaultOverlay放在网格的同一单元格中。然后将ZXingScannerView设置HorizontalOptions为&nbsp;。EndAndExpand解决方案:HorizontalOptions="FillAndExpand"&nbsp;VerticalOptions="FillAndExpand"
打开App,查看更多内容
随时随地看视频慕课网APP