gpt4 book ai didi

ios - Xamarin.Forms 方法在某些设备上执行两次

转载 作者:行者123 更新时间:2023-11-29 00:41:22 25 4
gpt4 key购买 nike

我有一个适用于 Android 和 iOS 的 Xamarin.Forms 应用程序,它读取二维码并将其保存在本地 sqlite 数据库中。

该应用程序安装在 3 台设备上(装有 iOS 9.3.5 的 iPhone 4s、装有 iOS 9.4 的 iPhone 5s 和装有 Android 6.0 的三星 Galaxy S7 Edge)。奇怪的是,在 iPhone 4s 上,将条形码保存到数据库中的方法被调用了两次!

Device.BeginInvokeOnMainThread(() =>{
Navigation.PopAsync();
DisplayAlert("Scanned Barcode", result.Text, "OK");
dbHelper.SaveItem(new DbItem() { Name = result.Text });
});

最佳答案

您可以使用标志来锁定事件,例如:

Device.BeginInvokeOnMainThread(() =>{

if(flag){
return;
}

flag = true;

Navigation.PopAsync();
DisplayAlert("Scanned Barcode", result.Text, "OK");
dbHelper.SaveItem(new DbItem() { Name = result.Text });
});

override OnAppearing(){
flag = false;
}

关于ios - Xamarin.Forms 方法在某些设备上执行两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39407720/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com