引言
由于网络上对android启动模式有各种解释,苦于没有一个良好的整理概括,所以很多初学者对启动模式感觉非常的遥远。我想做的就是把LaunchMode更加通俗的介绍给大家。
正文
a、直接跳入正题,开始动手解剖启动模式吧!对于4种activity的启动模式,只要接触过android启动模式的开发,就肯定知道:
1.standard模式,如果在AndroidManifest.xml中没有配置这个activity的启动模式,则activity的默认就是该启动模式。这个应该很好理解,Aactivity通过内部button跳转到Aactivity,则在Task中存在两个Aactivity的实例,即需要按两次Back键才能会退到做面。这个模式真的很简单,以至于我们都不需要去讨论他。
2.singleTop模式,代表栈顶模式。设置a、b、c三个activity,b在xml中配置为singleTop模式,从a跳b跳c,则栈顶到栈底的activity依次为:cba;从a跳b跳b跳c,则栈顶到栈底的activity依次为cba,两次的结果居然相同,原因是在b跳到b的过程中,因为此时b在栈顶,会重用b而不会重新生成b的实例(跳到第二个b的时候会调用他的onNewIntent方法,而不会调用oncreate之类的)。使用场景