在我的Xamarin.Forms应用中,我想在将MyPage
推到堆栈上之前确保它还没有被查看:
if (App.Current.MainNavigation.NavigationStack?.Any(x => x is MyPage) == true ||
App.Current.MainNavigation.ModalStack?.Any(x => x is MyPage) == true)
{
return;
}
else
{
await App.Current.MainNavigation.PushModalAsync(new MyPage());
}
但是它在两个堆栈上都没有找到MyPage
,并且调用了PushModalAsync
两次。
1条答案
按热度按时间fkaflof61#
我不能重现你的问题,因为代码还没有完成。但是如果你想检查页面是否已经被查看。您可以重写在查看页面时将调用的OnAppearing方法。例如:
然后通过以下代码检测它: