【发布时间】:2017-10-17 07:38:35
【问题描述】:
我正在使用 Xamarin Forms 和 Prism 开发应用程序。我正在使用 Zebra SDK 来使用条形码扫描仪硬件。 我使用 MessagingCenter 拦截条形码扫描事件,我在 MainActivity.cs 中有 Send 声明:
Xamarin.Forms.MessagingCenter.Send<App, string>(_my_application, "Barcode", data.Data);
我在订阅的 ViewModels 中收到扫描的数据:
Xamarin.Forms.MessagingCenter.Subscribe<App, string>(this, "Barcode", (sender, arg) =>
{
...
}
现在我需要停止条码扫描器以防出现功能错误。我通常会显示一个弹出消息:
_pageDialogService.DisplayAlertAsync("Barcode Scanner", "My message", "OK");
在用户点击“确定”按钮后,我想再次启用扫描仪。 (我希望这是一条阻止消息) 我怎么能这样做?问题是我的条形码扫描仪代码在 MainActivity 中,我不知道如何从 ViewModel 代码停止和恢复条形码扫描仪。弹出消息是不够的,因为扫描仪是由硬件按钮触发的。
【问题讨论】:
标签: c# xamarin.forms prism barcode-scanner