「Android/ライフサイクル」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→バック・フォアグラウンドのライフサイクル順序(実機でlog確認済)) |
|||
行1: | 行1: | ||
− | == | + | ==基本ライフサイクル順序== |
#onCreate() | #onCreate() | ||
#onStart() | #onStart() | ||
行10: | 行10: | ||
https://developer.android.com/reference/android/app/Activity.html | https://developer.android.com/reference/android/app/Activity.html | ||
+ | ==ライフサイクルコード== | ||
+ | <pre> | ||
+ | public class MainActivity extends AppCompatActivity { | ||
+ | private String TAG = "MainActivity"; | ||
+ | @Override | ||
+ | protected void onCreate(Bundle savedInstanceState) { | ||
+ | super.onCreate(savedInstanceState); | ||
+ | Log.d(TAG, "onCreate"); | ||
+ | setContentView(R.layout.activity_main); | ||
+ | } | ||
+ | @Override | ||
+ | protected void onStart() { | ||
+ | super.onStart(); | ||
+ | Log.d(TAG, "onStart"); | ||
+ | } | ||
+ | @Override | ||
+ | protected void onResume() { | ||
+ | super.onResume(); | ||
+ | Log.d(TAG, "onResume"); | ||
+ | } | ||
+ | @Override | ||
+ | protected void onPause() { | ||
+ | super.onPause(); | ||
+ | Log.d(TAG, "onPause"); | ||
+ | } | ||
+ | @Override | ||
+ | protected void onStop() { | ||
+ | super.onStop(); | ||
+ | Log.d(TAG, "onStop"); | ||
+ | } | ||
+ | @Override | ||
+ | protected void onDestroy() { | ||
+ | Log.d(TAG, "onDestroy"); | ||
+ | super.onDestroy(); | ||
+ | } | ||
+ | @Override | ||
+ | public void onWindowFocusChanged(boolean hasFocus) { | ||
+ | super.onWindowFocusChanged(hasFocus); | ||
+ | Log.d(TAG, "onWindowFocusChanged"); | ||
+ | } | ||
+ | @Override | ||
+ | protected void onRestoreInstanceState(Bundle savedInstanceState) { | ||
+ | super.onRestoreInstanceState(savedInstanceState); | ||
+ | Log.d(TAG, "onRestoreInstanceState"); | ||
+ | } | ||
+ | @Override | ||
+ | protected void onSaveInstanceState(Bundle outState) { | ||
+ | super.onSaveInstanceState(outState); | ||
+ | Log.d(TAG, "onSaveInstanceState"); | ||
+ | } | ||
+ | } | ||
+ | </pre> | ||
==回転したときのライフサイクル順序(実機でlog確認済)== | ==回転したときのライフサイクル順序(実機でlog確認済)== | ||
回転前表示時 | 回転前表示時 |
2018年11月14日 (水) 17:20時点における版
目次
基本ライフサイクル順序
- onCreate()
- onStart()
- onResume()
- onPause()
- onStop()
- onDestroy()
参考
https://developer.android.com/reference/android/app/Activity.html
ライフサイクルコード
public class MainActivity extends AppCompatActivity { private String TAG = "MainActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.d(TAG, "onCreate"); setContentView(R.layout.activity_main); } @Override protected void onStart() { super.onStart(); Log.d(TAG, "onStart"); } @Override protected void onResume() { super.onResume(); Log.d(TAG, "onResume"); } @Override protected void onPause() { super.onPause(); Log.d(TAG, "onPause"); } @Override protected void onStop() { super.onStop(); Log.d(TAG, "onStop"); } @Override protected void onDestroy() { Log.d(TAG, "onDestroy"); super.onDestroy(); } @Override public void onWindowFocusChanged(boolean hasFocus) { super.onWindowFocusChanged(hasFocus); Log.d(TAG, "onWindowFocusChanged"); } @Override protected void onRestoreInstanceState(Bundle savedInstanceState) { super.onRestoreInstanceState(savedInstanceState); Log.d(TAG, "onRestoreInstanceState"); } @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); Log.d(TAG, "onSaveInstanceState"); } }
回転したときのライフサイクル順序(実機でlog確認済)
回転前表示時
- onStart
- onResume
- onWindowFocusChanged
回転したとき
- onPause
- onSaveInstanceState
- onStop
- onDestroy
- onCreate
- onStart
- onRestoreInstanceState
- onResume
- onWindowFocusChanged
バック・フォアグラウンドのライフサイクル順序(実機でlog確認済)
バックグラウンドに入ったとき
- onPause
- onWindowFocusChanged
- onSaveInstanceState
- onStop
フォアグラウンドに復活したとき
- onStart
- onResume
- onWindowFocusChanged
Intentで別の画面に移動&元の画面に戻ったときのライフサイクル順序(実機でlog確認済)
Intentで別の画面に移動
- onPause
元の画面に戻ったとき
- onResume