C# ACR加载和ZXing处理结果
在一个非常简单的C# ACR加载和ZXing处理结果,c#,android,xamarin,zxing,acr,C#,Android,Xamarin,Zxing,Acr,在一个非常简单的Xamarin安卓应用程序中我用ZXing扫描条形码,然后处理结果。处理句柄结果需要几秒钟的时间,在此期间,我想显示ACR showLoading,但当扫描仪/摄像机关闭时,活动指示器几乎立即隐藏 在处理结果时,我如何保持节目加载打开 清除代码: async void onAddByScan(object sender, EventArgs e) { var options = new ZXing.Mobile.MobileBarcodeScann
Xamarin安卓应用程序中
我用ZXing
扫描条形码,然后处理结果。处理句柄结果需要几秒钟的时间,在此期间,我想显示ACR showLoading
,但当扫描仪/摄像机关闭时,活动指示器几乎立即隐藏
在处理结果时,我如何保持节目加载打开
清除代码:
async void onAddByScan(object sender, EventArgs e)
{
var options = new ZXing.Mobile.MobileBarcodeScanningOptions();
var scanner = new MobileBarcodeScanner();
ZXing.Result result = await scanner.Scan(options);
using (UserDialogs.Instance.Loading())
{
await HandleResultAsync(result);
}
}
async Task HandleResultAsync(ZXing.Result result)
{
//do something with the results
}
您可以在类中使用InvokeOnMainThreadAsync方法。这种方法的思想不仅是在UI/主线程上执行代码,而且还要等待它的代码。通过这种方式,您可以同时拥有异步/等待逻辑和主线程执行 你可以参考类似的案例