Page lifecycle events in xamarin.forms
我刚刚开发了我的第一个 xamarin.forms 应用程序。我对 xamarin.forms 感到很兴奋,但我错过了一些活动。
xamarin.forms ContentPage 中是否有任何页面生命周期事件?
我知道这两个:
1 2 3 4 5 6 7 | protected override void OnAppearing() { } protected override void OnDisappearing() { } |
但是 OnAppearing() 事件只触发一次。在 Android 上,当我按下开始按钮并返回我的应用程序时,此事件不会再次触发。
是否有解决方法(如 WindowsPhone 页面中的 OnNavigatedTo)?
谢谢。
因此,当您的页面出现时会触发
我认为你在谈论的是如果你让你的应用程序进入睡眠状态并导航回它,
您正在寻找的是
1 2 3 4 5 6 7 8 9 10 11 12 | protected override void OnStart() { Debug.WriteLine ("OnStart"); } protected override void OnSleep() { Debug.WriteLine ("OnSleep"); } protected override void OnResume() { Debug.WriteLine ("OnResume"); } |
然后您可以使用
该 Xamarin 文档包括必须对旧 Xamarin 项目进行的更改才能访问这些事件。例如您的共享库中的
您还可以使用 Xamarin 的 MessagingCenter 来执行任意事件协调:http://developer.xamarin.com/guides/cross-platform/xamarin-forms/messaging-center/
我对同一件事感到沮丧:在 Xamarin.Forms 中没有一致的视图生命周期事件。但是您可以通过使用 MessagingCenter 来解决其中的一些限制,它只是一个简单的发布/订阅消息传递工具。