Я смотрю на образец для ZXing.net для Xamarin.Forms , и он использует только кодовый подход для сканирования штрих-кода.
Я использовал этот вопрос каквдохновение , чтобы получить следующий код, но я не совсем уверен, как управлять событием сканирования при использовании Prism.
<?xml version="1.0" encoding="UTF-8"?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:zx="clr-namespace:ZXing.Net.Mobile.Forms;assembly=ZXing.Net.Mobile.Forms"
xmlns:zxcm="clr-namespace:ZXing.Common;assembly=zxing.portable"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="WebOfTrust.Views.Client.MyPeople.ScanNewOrUpdateContact">
<ContentPage.Content>
<StackLayout>
<zx:ZXingDefaultOverlay
TopText= " Hold your phone up to the barcode"
BottomText=" Scanning will being automatically">
</zx:ZXingDefaultOverlay>
<!-- BarcodeValue="{Binding QrCode}" -->
<zx:ZXingScannerView
HorizontalOptions="FillAndExpand"
VerticalOptions="FillAndExpand">
</zx:ZXingScannerView>
</StackLayout>
</ContentPage.Content>
</ContentPage>
У меня вопрос, как мне создать страницу, чтобы я могпоймать OnScanResult, как показано в примере (скопировано ниже)
zxing.OnScanResult += (result) =>
Device.BeginInvokeOnMainThread (async () => {
// Stop analysis until we navigate away so we don't keep reading barcodes
zxing.IsAnalyzing = false;
// Show an alert
await DisplayAlert ("Scanned Barcode", result.Text, "OK");
// Navigate away
await Navigation.PopAsync ();
});