您的位置:首页 > 移动开发 > Android开发

android activity启动模式笔记

2016-07-29 17:26 429 查看
大家都知道activity有四种模式:standard,singleTop,singleTask,singleInstance,其中standard是默认的模式。按照谷歌的说法,他们又可以分为两类,standard和singleTop一类,他们都是在startActivity()会后新建实例,并且他们新建的实例可以在任何task内,也可以在所属task的任何位置(新建的实例都是放在在调起startActivity()的activity所属的task,除非使用FLAG_ACTIVITY_NEW_TASK,就会到其他的task)。另一类是singleTask和singleInstance,他们在一个时间内,永远只有一个实例也只能在一个task中,并且处于栈顶(也就是说在他们只有在没有的情况下创建实例,只要有实例了就不会再创建)。

Standart和singleTop的区别:任何时候standard都会创建新的实例,创建的实例都会放在栈顶,而singleTop只在栈顶有实例的时候不创建(此时会调用onNewIntent()方法),其他时候跟standard一样。

SingleTask和SigleInstance的区别在于,SingleTask 所在的task中可以有其他的实例,而singleInstance只能用它自己一个实例。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android