您的位置:首页 > 移动开发 > Android开发

Android 面试之横竖屏切换的Activity生命周期

2017-08-06 12:00 323 查看
public class EngineerJspActivity extends Activity {
private static String Tag = "EngineerJspActivity";
@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 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键之后的生命周期:



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: