標籤:android 面試
public class EngineerJspActivity extends Activity { private static String Tag = "EngineerJspActivity";@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);Log.d(Tag, "onCreate()");setContentView(R.layout.activity_main);}@Overrideprotected void onStart() {super.onStart();Log.d(Tag, "onStart()");} @Override protected void onResume() { super.onResume(); Log.d(Tag, "onResume()"); } @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); Log.d(Tag, "onSaveInstanceState()"); } @Override protected void onPause() { super.onPause(); Log.d(Tag, "onPause()"); } @Override protected void onStop() { super.onStop(); Log.d(Tag, "onStop()"); } @Override protected void onRestoreInstanceState(Bundle savedInstanceState) { super.onRestoreInstanceState(savedInstanceState); Log.d(Tag, "onRestoreInstanceState()"); } @Override protected void onDestroy() { super.onDestroy(); Log.d(Tag, "onDestroy()"); }}②運行Activity(沒有切換畫面的正常情況下啟動Activity),得到如下結果:
③切換成橫屏時的Activity生命週期:
④換回豎屏的Activity生命週期:
⑤給資訊清單檔加上android:configChanges="orientation"屬性,重新啟動Activity,沒有切換畫面時(正常啟動)的生命週期:
⑥加上android:configChanges="orientation"屬性,切換成橫屏,Activity的生命週期:
⑦加上android:configChanges="orientation"屬性,換回豎屏,Activity的生命週期:
⑧加上android:configChanges="orientation"keyboardHidden"屬性,正常啟動Activity的生命週期(未切螢幕):
⑨加上android:configChanges="orientation"keyboardHidden"屬性,正常啟動Activity的生命週期(切成橫屏):
⑩加上android:configChanges="orientation"keyboardHidden"屬性,正常啟動Activity的生命週期(換回豎屏):
執行Home鍵之後的生命週期:
Android 面試之橫豎屏切換的Activity生命週期