《Android开发艺术探索》之学习笔记(一)Activity的生命周期和启动模式

Activity的生命周期:

onStart、onStop 从是否可见角度来回调;onResume、onPause 从是否位于前台角度来回调。
Activity A -> Activity B :A onPause -> B onResume
系统资源配置发生变化导致Activity被销毁并重新创建。Activity异常销毁,系统回调onSaveInstanceState来保存Activity当前状态。onSaveInstanceState -> onStop -> onStart -> onRestoreInstanceState,onSaveInstanceState和onPause没有既定时序关系。

Activity的启动模式:

  • standard:
    标准模式。每次启动一个Activity都会重新创建一个实例。被启动的Activity运行在启动它的那个Activity所在的栈中。

  • singleTop:
    栈顶复用模式。如果新的Activity已经位于栈顶,它不会被重新创建,系统回调onNewIntent。

  • singleTask:
    栈内复用,单例模式。Activity在一个栈中只有一个实例。如果Activity想要的栈不存在,则先创建栈,然后创建Activity的实例并入栈。如果栈内存在Activity的实例,则把Activity上面的其他Activity全部出栈,使它位于栈顶。TaskAffinity标识Activity所需要的任务栈的名字,默认情况下,所有Activity所需的任务栈的名字都是应用包名。

  • singleInstance:
    独立栈内单例模式。系统为Activity单独创建一个任务栈,栈内只有它的实例。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值