[解決済み] onCreate()とonStart()の違い?[重複あり]
2022-04-26 05:44:51
質問
重複の可能性があります。
Android Activity Life Cycle - onPause()とOnStop()の違いについて
疑問に思ったこと -。
とはどのような違いがあるのでしょうか?
onCreate()
と
onStart()
メソッドですか?
と思います。
onStart()
は冗長なメソッドです。
onCreate()
は常に呼び出されます(少なくとも私の最後の2つのプロジェクトでは)。
この違いを説明できる人はいますか?
解決方法は?
アクティビティーのライフサイクルを見てみましょう。
どこ
***onCreate()***
アクティビティが最初に作成されたときに呼び出されます。ここで、ビューの作成、リストへのデータのバインドなど、通常の静的なセットアップをすべて行う必要があります。また、このメソッドは、アクティビティが以前にフリーズした状態を含むBundleを提供します(ある場合)。 この後、常にonStart()が続きます。
***onStart()***
アクティビティがユーザーから見えるようになったときに呼び出されます。 アクティビティがフォアグラウンドになった場合はonResume()、非表示になった場合はonStop()が続く。
そして、これらのメソッドが呼び出されたときに、その様子を見るための簡単なクラスを書くことができます。
public class TestActivity extends Activity {
/** Called when the activity is first created. */
private final static String TAG = "TestActivity";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Log.i(TAG, "On Create .....");
}
/* (non-Javadoc)
* @see android.app.Activity#onDestroy()
*/
@Override
protected void onDestroy() {
super.onDestroy();
Log.i(TAG, "On Destroy .....");
}
/* (non-Javadoc)
* @see android.app.Activity#onPause()
*/
@Override
protected void onPause() {
super.onPause();
Log.i(TAG, "On Pause .....");
}
/* (non-Javadoc)
* @see android.app.Activity#onRestart()
*/
@Override
protected void onRestart() {
super.onRestart();
Log.i(TAG, "On Restart .....");
}
/* (non-Javadoc)
* @see android.app.Activity#onResume()
*/
@Override
protected void onResume() {
super.onResume();
Log.i(TAG, "On Resume .....");
}
/* (non-Javadoc)
* @see android.app.Activity#onStart()
*/
@Override
protected void onStart() {
super.onStart();
Log.i(TAG, "On Start .....");
}
/* (non-Javadoc)
* @see android.app.Activity#onStop()
*/
@Override
protected void onStop() {
super.onStop();
Log.i(TAG, "On Stop .....");
}
}
これで混乱が解消されるといいのですが。
そして、ご覧ください。 こちら をご覧ください。
ライフサイクルメソッドの詳細 は、非常に良い例とデモアプリケーションで、ライフサイクルを理解するのに非常に良い記事です。
関連
-
[解決済み] Androidのgravityとlayout_gravityの違いは何ですか?
-
Android のパッケージングに失敗し、Android リソースのリンクに失敗したことを示すプロンプトが表示される
-
Android studioのインストールと問題発生、Emulator: PANIC: AVDのシステムパスが見つかりません。
-
ライブラリをモジュールとしてインポートする際にエラーが発生しました。Error:A problem occurred configuring project ':library'.
-
Windowsのadbシェルでデータディレクトリにアクセスするとパーミッションが拒否される
-
[解決済み] Androidアプリケーションのアクティビティ間でデータを受け渡すにはどうすればよいですか?
-
[解決済み] match_parentとfill_parentの違いは何ですか?
-
[解決済み] アプリケーションを終了することは嫌われますか?
-
[解決済み] グリッドレイアウトにおけるフリングジェスチャーの検出
-
[解決済み】「px」、「dip」、「dp」、「sp」の違いは?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
AndroidStudio reports Could not resolve all artifacts for configuration ':app:classpath'.
-
AndroidStudio3.0 Error:Execution failed for task ':app:processDebugResources'.
-
Android studioのインストールと問題発生、Emulator: PANIC: AVDのシステムパスが見つかりません。
-
Error:A problem occurred configuring project ':app'. > ビルドを見つけられませんでした。
-
SpinnerのOnItemSelectedListenerのonItemSelectedメソッドの4つのパラメーターの意味
-
Androidのカラーグラデーション実装のまとめ
-
アンドロイドシェイプ、グラデーション、角丸、ボーダーラインの設定
-
アンドロイドスタジオソフトウェア使用詳細説明書
-
android studioが新しいプロジェクトを作成しますが、プロジェクトの同期に成功するまでデザインエディタが使用できません。
-
[解決済み] Androidのアクティビティライフサイクル - これらのメソッドは何のためにあるのか?