Xamarin.ios UIAlertController不会被解雇
在我的Xamarin iOS应用程序中,我有一个显示警报对话框的静态助手方法。如果用户仍未按下“确定”按钮,则该对话框需要在几秒钟后自动消失。以下是简化的代码片段:Xamarin.ios UIAlertController不会被解雇,xamarin.ios,Xamarin.ios,在我的Xamarin iOS应用程序中,我有一个显示警报对话框的静态助手方法。如果用户仍未按下“确定”按钮,则该对话框需要在几秒钟后自动消失。以下是简化的代码片段: UIAlertController dlg = UIAlertController.Create(title, text, UIAlertControllerStyle.Alert); dlg.AddAction(UIAlertAction.Create("OK", UIAlertActionStyle.Cancel,
UIAlertController dlg = UIAlertController.Create(title, text,
UIAlertControllerStyle.Alert);
dlg.AddAction(UIAlertAction.Create("OK", UIAlertActionStyle.Cancel, null);
UIApplication.SharedApplication.KeyWindow.RootViewController.
PresentViewController(dlg, true, null);
稍后,当计时器过期时:
t.Elapsed += (s, e) => {
dlg.DismissViewController(true, null);
};
虽然确实调用了方法DismissViewController
,但对话框并没有从屏幕上消失
我甚至试着调用dlg.Dispose()
,但这也没用
有人能帮我理解我错过了什么吗?注意。事件中的代码不在主线程上 在主线程上调用它
t.Elapsed += (s, e) =>
{
InvokeOnMainThread(() => {
dlg.DismissViewController(true, null);
});
};
事件中经过的代码不在主线程上 在主线程上调用它
t.Elapsed += (s, e) =>
{
InvokeOnMainThread(() => {
dlg.DismissViewController(true, null);
});
};
完美的谢谢,太好了。非常感谢。