2. 简述Activity的四种启动模式及其区别。
时间: 2024-05-17 08:19:25 浏览: 112
简单介绍Android中Activity的四种启动模式
在Android中,Activity有四种启动模式,它们是:
1. standard模式:默认的启动模式,每次启动Activity都会创建一个新的实例,并放入任务栈中。如果多次启动同一个Activity,将会创建多个实例,并且放入不同的任务栈中。
2. singleTop模式:当启动一个Activity时,如果该Activity已经位于栈顶,则不会创建新的实例,而是直接使用已有的实例。如果不在栈顶,则会创建一个新的实例。这种模式适用于单例模式的Activity,比如一个音乐播放器或者是一个消息通知栏。
3. singleTask模式:该模式下,每个任务栈中只能有一个该类型的Activity。如果要启动的Activity已经存在于任务栈中,则不会重新创建新的实例,而是直接将该Activity调到栈顶。如果不存在,则会新建一个实例,并放入任务栈中。该模式适用于需要清除Activity栈中所有的Activity,只保留最后一个Activity的场景。
4. singleInstance模式:与singleTask模式类似,但是该模式下,该Activity只能位于一个独立的任务栈中。如果要启动的Activity已经存在于该独立任务栈中,则不会重新创建新的实例,而是直接将该Activity调到栈顶。如果不存在,则会新建一个实例,并放入该独立任务栈中。该模式适用于需要共享资源的Activity,比如一个应用程序的主界面。
总之,四种启动模式各有不同,可以应用于不同的场景,开发者在使用时应该根据具体的需求来选择合适的启动模式。
阅读全文