Activity.OnRetainNonConfigurationInstance メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
構成の変更によるアクティビティの破棄の一環として、新しい構成に対して新しいインスタンスがすぐに作成されることがわかっている場合に、システムによって呼び出されます。
[Android.Runtime.Register("onRetainNonConfigurationInstance", "()Ljava/lang/Object;", "GetOnRetainNonConfigurationInstanceHandler")]
public virtual Java.Lang.Object? OnRetainNonConfigurationInstance();
[<Android.Runtime.Register("onRetainNonConfigurationInstance", "()Ljava/lang/Object;", "GetOnRetainNonConfigurationInstanceHandler")>]
abstract member OnRetainNonConfigurationInstance : unit -> Java.Lang.Object
override this.OnRetainNonConfigurationInstance : unit -> Java.Lang.Object
返品
次のアクティビティ インスタンスに伝達する目的の状態を保持している任意のオブジェクト
- 属性
注釈
構成の変更によるアクティビティの破棄の一環として、新しい構成に対して新しいインスタンスがすぐに作成されることがわかっている場合に、システムによって呼び出されます。 アクティビティ インスタンス自体を含め、ここで好きな任意のオブジェクトを返すことができます。これは、後で新しいアクティビティ インスタンスで getLastNonConfigurationInstance() を呼び出すことによって取得できます。 Build.VERSION_CODESを対象としている場合。その後、FRAGMENT.setRetainInstance(boolean) で Fragment を使用することを検討してください。 この関数は純粋に最適化として呼び出され、呼び出されることに依存してはなりません。 呼び出されると、構成の切り替えを最適化するためにさまざまな保証が行われます。この関数は onStop() と onDestroy() の間で呼び出されます。 アクティビティの新しいインスタンスは、この onDestroy() が呼び出された直後に常に作成されます。 特に、この期間中はメッセージはディスパッチされません (返されるオブジェクトに関連付けるアクティビティがない場合)。 ここで返すオブジェクトは、ここで説明されているように、次のアクティビティ インスタンスの getLastNonConfigurationInstance() メソッドから常に使用できます。 これらの保証は、アクティビティがこの API を使用して、読み込まれたビットマップからネットワーク接続に、古いアクティビティ インスタンスから新しいアクティビティ インスタンスに広範な状態を伝達し、スレッドを均等にアクティブに実行できるように設計されています。 文字列、レイアウト、ドローアブルなどのリソースから読み込まれたデータを含め、構成に基づいて変更される可能性のあるデータを伝達しないでください。 次のアクティビティへの切り替え中にメッセージ処理が行われる保証は、アクティブ オブジェクトでの使用を簡略化します。 たとえば、保持状態が AsyncTask の場合、次のインスタンスの onCreate(Bundle) を実行するまで、コールバック関数 (AsyncTask.onPostExecute(Result) など) が呼び出されないことが保証されます。 (ただし、AsyncTask.doInBackground(Params) は別のスレッドで実行されているため、このような保証はありません)。 注: ほとんどの場合、代わりに Fragment API Fragment.setRetainInstance(boolean) を使用する必要があります。これは、Android サポート ライブラリを通じて古いプラットフォームでも利用できます。
android.app.Activity.onRetainNonConfigurationInstanceの Android リファレンス。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。