ดูเมธอดต่างๆของ Android Activity Lifecycle ด้วยการ log ออกมาดู
Method | Description |
---|---|
onCreate | called when activity is first created. |
onStart | called when activity is becoming visible to the user. |
onResume | called when activity will start interacting with the user. |
onPause | called when activity is not visible to the user. |
onStop | called when activity is no longer visible to the user. |
onRestart | called after your activity is stopped, prior to start. |
onDestroy | called before the activity is destroyed. |
ไฟล์ที่เกี่ยวข้อง
- MainActivity.java
MainActivity.java
package com.phaisarn.myapplication; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; public class MainActivity extends AppCompatActivity { String tag = "mylog"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.v(tag, "[onCreate]"); } // invoked when the activity may be temporarily destroyed, save the instance state here @Override public void onSaveInstanceState(Bundle outState) { // outState.putString(GAME_STATE_KEY, mGameState); // outState.putString(TEXT_VIEW_KEY, mTextView.getText()); // call superclass to save any view hierarchy super.onSaveInstanceState(outState); Log.v(tag, "[onSaveInstanceState]"); } // This callback is called only when there is a saved instance that is previously saved by using // onSaveInstanceState(). We restore some state in onCreate(), while we can optionally restore // other state here, possibly usable after onStart() has completed. // The savedInstanceState Bundle is same as the one used in onCreate(). @Override public void onRestoreInstanceState(Bundle savedInstanceState) { super.onRestoreInstanceState(savedInstanceState); Log.v(tag, "[onRestoreInstanceState]"); } @Override public void onStart() { super.onStart(); Log.v(tag, "[onStart]"); } @Override public void onResume() { super.onResume(); Log.v(tag, "[onResume]"); } @Override public void onPause() { super.onPause(); Log.v(tag, "[onPause]"); } @Override public void onStop() { super.onStop(); Log.v(tag, "[onStop]"); } @Override public void onRestart() { super.onRestart(); Log.v(tag, "[onRestart]"); } @Override public void onDestroy() { super.onDestroy(); Log.v(tag, "[onDestroy]"); } }
การดู log ให้เปิด logcat ออกมาดู View > Tool Windows > Logcat
เลือกเครื่อง เลือก application เลือกระดับของ log เป็น Verbose แล้วพิมพ์ mylog เพื่อ filter log ให้เหลือน้อยลงจะได้ดูง่ายขึ้น
Link