Xamarin.Forms 应用生命周期

Application 基类提供下列功能:

生命周期方法

Application 类包含三个虚拟方法,可以替代以响应生命周期更改:

  • OnStart - 在启动应用程序时调用它。
  • OnSleep - 每当应用程序转入后台时调用它。
  • OnResume - 应用程序发送到后台后恢复时调用。

注意

没有终止应用程序的方法。 在正常情况下(即不崩溃),应用程序终止将从 OnSleep 状态发生,并且没有对代码的其他任何通知。

若要观察何时调用这些方法,请在每个平台上实现 WriteLine 调用(如下所示)并进行测试。

protected override void OnStart()
{
    Debug.WriteLine ("OnStart");
}
protected override void OnSleep()
{
    Debug.WriteLine ("OnSleep");
}
protected override void OnResume()
{
    Debug.WriteLine ("OnResume");
}

重要

在 Android 上,若主活动的 [Activity()] 属性缺少 ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation,旋转时及首次启动应用程序时,将调用 OnStart 方法。

Application 类上有两个事件,可提供页面显示和消失通知:

这些事件可用于要在页面在屏幕上显示时进行跟踪的场景。

注意

Page.Appearing 和 事件后,从 Page.Disappearing 基类中将分别引发 PageAppearingPagePageDisappearing 事件。

Application 类上有四个事件,每个都有其自己的参数,使你能够响应如下所示和解除的模式页面:

  • ModalPushing - 按模式推送页面时将引发它。
  • ModalPushed - 按模式推送页面后将引发它。
  • ModalPopping - 按模式弹出页面时将引发它。
  • ModalPopped - 按模式弹出页面后将引发它。

注意

ModalPoppingEventArgs 类型的 ModalPopping 事件参数,包含 Cancel 属性。 如果 Cancel 设置为 true,将取消模式弹出。