Activity生命周期(横竖屏切换,Home键,Dialog)

//启动生命周期为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生命周期不变
}
  • 6
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值