//启动生命周期为onCreate onStart onResume //销毁为onPause onStop onDestroy //锁屏onPause onStop onSaveInstanceState 解锁 onRestart onStart onResume //Home键回到桌面onPause onStop onSaveInstanceState 再进来 onRestart onStart onResume //横竖屏切换会先销毁再重建,生命周期都会执行onPause onStop onSaveInstanceState onDestroy onCreate onStart onRestoreInstanceState onResume //如果配置了android:configChanges="orientation",同上 //如果配置了android:configChanges="screenSize",同上 //如果配置了android:configChanges="keyboardHidden",同上 //android:configChanges="orientation|keyboardHidden",同上,其他省略 //如果配置了android:configChanges="orientation|screenSize",不会销毁重建,只执行onConfigurationChanged //android:configChanges="orientation|screenSize|keyboardHidden",不会销毁重建,只执行onConfigurationChanged //,至少需要同时配置orientation|screenSize 启动第二个页面 findViewById<Button>(R.id.btn_view).setOnClickListener { startActivity(Intent(this, LifeCircleSecondActivity::class.java)) //先onPause // LifeCircleSecondActivity onCreate onStart onResume //再onStop onSaveInstanceState //返回 LifeCircleSecondActivity先onPause //再onRestart onStart onResume //LifeCircleSecondActivity先onStop onDestroy //注意 //如果LifeCircleSecondActivity配置为Theme.AppCompat.Dialog或者是透明的Activity, // 该页面LifeCircleVmActivity只会onPause,返回只会onResume } findViewById<Button>(R.id.btn_dialog).setOnClickListener { var dialog = AlertDialog.Builder(this) .setTitle("测试") .create() dialog.show() //弹出dialog生命周期不变 }
Activity生命周期(横竖屏切换,Home键,Dialog)
于 2024-04-11 15:57:12 首次发布