Xamarin.Forms Cycle de vie des applications

La classe de base Application offre les fonctionnalités suivantes :

Méthodes de cycle de vie

La classe Application contient trois méthodes virtuelles qui peuvent être substituées pour répondre aux changements liés au cycle de vie :

  • OnStart : appelé au démarrage de l’application.
  • OnSleep : appelé chaque fois que l’application passe à l’arrière-plan.
  • OnResume : appelé lors de la reprise de l’application, après son envoi en arrière-plan.

Notes

Il n’existe aucune méthode pour l’arrêt de l’application. Dans des circonstances normales (c’est-à-dire, en dehors d’un plantage), l’arrêt de l’application est effectué à partir de l’état OnSleep, sans autre notification de votre code.

Pour savoir à quel moment ces méthodes sont appelées, implémentez un appel WriteLine dans chacune d’elle (comme indiqué ci-dessous) et testez-les sur chaque plateforme.

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

Important

Sur Android, la méthode OnStart sera appelée sur la rotation tout comme quand l’application démarre pour la première fois, si l’activité principale n’a pas de ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation dans l’attribut [Activity()].

Dans la classe Application, deux événements fournissent une notification d’apparition et de disparition de pages :

  • PageAppearing : déclenché lorsqu’une page est sur le point de s’afficher à l’écran.
  • PageDisappearing : déclenché lorsqu’une page est sur le point de disparaître de l’écran.

Ces événements peuvent être utilisés lorsque vous souhaitez effectuer le suivi des pages qui s’affichent à l’écran.

Notes

Les événements PageAppearing et PageDisappearing sont déclenchés à partir de la classe de base Page immédiatement après les événements Page.Appearing et Page.Disappearing, respectivement.

La classe Application comprend quatre événements qui ont chacun leurs propres arguments d’événement, et qui vous permettent de répondre aux pages modales affichées et ignorées :

  • ModalPushing : déclenché lors de l’envoi (push) modal d’une page.
  • ModalPushed : déclenché une fois l’envoi (push) modal d’une page effectué.
  • ModalPopping : déclenché lorsqu’une page est dépilée de façon modale.
  • ModalPopped : déclenché une fois qu’une page a été dépilée de façon modale.

Notes

Les arguments d’événement ModalPopping de type ModalPoppingEventArgs contiennent une propriété Cancel. Lorsque Cancel est défini sur true, la fenêtre contextuelle modale est annulée.