Application の基底クラスでは、次の機能が提供されています。
- ライフサイクル メソッド
OnStart、OnSleep、OnResume。 - ページ ナビゲーション イベント
PageAppearing、PageDisappearing。 - モーダル ナビゲーション イベント
ModalPushing、ModalPushed、ModalPopping、ModalPopped。
ライフサイクル メソッド
Application クラスには 3 つの仮想メソッドが含まれており、それをオーバーライドしてライフサイクルの変化に対応できます。
OnStart- アプリケーションの起動時に呼び出されます。OnSleep- アプリケーションがバックグラウンドに移行するたびに呼び出されます。OnResume- バックグラウンドに送られたアプリケーションが再開するときに呼び出されます。
Note
アプリケーションの終了のメソッドはありません。 通常の (つまり、クラッシュではない) 状況では、アプリケーションの終了は OnSleep 状態から行われ、コードへの追加の通知はありません。
これらのメソッドが呼び出されるタイミングを確認するには、各メソッドに WriteLine の呼び出しを実装し (次の例を参照)、各プラットフォームでテストします。
protected override void OnStart()
{
Debug.WriteLine ("OnStart");
}
protected override void OnSleep()
{
Debug.WriteLine ("OnSleep");
}
protected override void OnResume()
{
Debug.WriteLine ("OnResume");
}
重要
Android では、OnStart メソッドは順番に呼び出されるだけでなく、メイン アクティビティの [Activity()] 属性に ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation がない場合のアプリケーションの初回起動時にも呼び出されます。
ページ ナビゲーション イベント
Application クラスには、ページの表示と消去の通知を提供する 2 つのイベントがあります。
PageAppearing- ページが画面に表示されようとしているときに発生します。PageDisappearing- ページが画面から消去されようとしているときに発生します。
画面に表示されるページを追跡する必要があるシナリオで、これらのイベントを使用できます。
Note
PageAppearing イベントと PageDisappearing イベントは、それぞれ Page.Appearing イベントと Page.Disappearing イベントの直後に、Page 基底クラスから生成されます。
モーダル ナビゲーション イベント
Application クラスには、それぞれが独自のイベント引数を持つ 4 つのイベントがあり、それを使用してモーダル ページの表示と消去に応答できます。
ModalPushing- ページがモーダルでプッシュされるときに発生します。ModalPushed- ページがモーダルでプッシュされた後に発生します。ModalPopping- ページがモーダルでポップされるときに発生します。ModalPopped- ページがモーダルでポップされた後に発生します。
Note
型が ModalPoppingEventArgs である ModalPopping のイベント引数には、Cancel プロパティが含まれています。 Cancel が true に設定されると、モーダル ポップアップは取り消されます。