对于Acitvity的启动模式来说,我掌握的是在什么时候去用哪一种模式去设计Activity,我觉得对于初学者来说,应该差不多了。所以,概念上的东西我还是讲的少一些,只是把如何使用以及什么情况下去使用告诉大家,供大家参考。
启动模式来说,就是四种:
1.standard 模式 每次启动Activity,都会创建Activity的实例,并且将其放入任务栈中
2.singleTop 栈顶重用 如果要启动的Activity在任务栈的顶端正好存在该Activity的实例,那么就会重用该实例而不会创建新的实例。
如果任务栈中存在该Activity的实例,只要不在任务栈的顶端,也会创建它的实例。
3.singleTask 栈内重用
如果任务栈中有要启动的Activity的实例,就会重用
并且位于该实例上面的所有Activity都会被弹出(销毁)
4.singleInstance 单例模式
这种模式的Activity会单独开辟一个任务栈,并且独享此栈。
在这里其实我不知道怎么去讲可以让大家更好的去理解其启动模式。建议大家去读一本书——Android开发艺术探索。这本书里面讲的很细节,可以让大家有一种恍然大悟的感觉吧。
接下来,我说一下设置Activity的启动模式的两种方法:
1.AndroidManifest.xml文件中对Activity进行配置,例如:
<activity
android:name="com.sun.activity_launchmode_demo.SecondActivity"
android:launchMode="singleInstance">
</activity>
2.在Intent里面进行配置,这个我会在下一篇文章中讲Intent时候为大家介绍。
其实,对于Activity的启动模式的实际运用当中,还是蛮重要的,一个好的APP不会一直使用默认的standard模式,会根据用户的操作测试Activity的启动模式应该怎么去运用。