0

ほとんどの Android アプリでonCreate()は、コードの最初のビットでオーバーライドされます。super.onCreate(savedInstanceState)これが savedInstanceState バンドルを収集し、コンパイルに必要であることはわかっていますが、すべてのコンストラクターはどうですか?

onResume()onStop()などonStop()。含める必要がある重要なスーパー コンストラクターを持つオーバーライドされたメソッドはどれですか。

どこかにリストはありますか?

スーパーコンストラクターは、他のコードではなく一部のコードに含まれていることがわかります..私はそれらを自分で含めたことがありますが、そうでないものもあり、実際に違いに気づいたことはありません..

放つことができる光はすべて好評です!

乾杯

4

3 に答える 3

2

onCreate()onStart()およびonResume()オンのときにアクティビティを開始するために使用され、アクティビティonStop()onDestroy()停止またはクリーンアップするために使用されます。

ドキュメントに従って、各メソッドのスーパーを呼び出す必要があります。

派生クラスは、このメソッドのスーパー クラスの実装を呼び出す必要があります。そうでない場合は、例外がスローされます。

詳細について

于 2013-01-30T12:52:19.540 に答える
2

ソース コードを読めば、Activity.javaこれら 6 つのメソッドの内部にコードが含まれていることがわかると思います。そのため、オーバーライドされたすべてのonXXXメソッドに対して super を呼び出す必要があります。

于 2013-01-30T13:00:02.507 に答える
2

このドキュメントを確認してください。

アクティビティのライフサイクル全体は、次のアクティビティ メソッドによって定義されます。これらはすべて、アクティビティの状態が変化したときに適切な作業を行うためにオーバーライドできるフックです。すべてのアクティビティは onCreate(Bundle) を実装して初期設定を行います。多くの場合、onPause() を実装してデータへの変更をコミットし、それ以外の場合はユーザーとの対話を停止する準備をします。これらのメソッドを実装するときは、常にスーパークラスを呼び出す必要があります。

public class Activity extends ApplicationContext {
    protected void onCreate(Bundle savedInstanceState);

    protected void onStart();

    protected void onRestart();

    protected void onResume();

    protected void onPause();

    protected void onStop();

    protected void onDestroy();
}
于 2013-01-30T12:13:16.497 に答える