激活activity的方法有哪些?
一、激活activity的方法
1. 默认启动模式standard
该模式可以被设定,不在manifest设定时候,Activity的默认模式就是standard。在该模式下,启动的Activity会依照启动顺序被依次压入Task中。
2. 栈顶复用模式singleTop
在该模式下,如果栈顶Activity为我们要新建的Activity(目标Activity),那么就不会重复创建新的Activity。每个Activity界面都只有一个显示当前界面名称的TextView和一个用来组跳转的Button,所以应用OneText的功能就是从活动1跳转到活动2,活动2继续跳转活动2。
3. 栈内复用模式singleTask
与singleTop模式相似,只不过singleTop模式是只是针对栈顶的元素,而singleTask模式下,如果task栈内存在目标Activity实例,则:
将task内的对应Activity实例之上的所有Activity弹出栈。
将对应Activity置于栈顶,获得焦点。
程序主界面,我们肯定不希望主界面被多创建,而且在主界面退出的时候退出整个App是较好的设想。耗费系统资源的Activity:对于那些及其耗费系统资源的Activity,我们可以考虑将其设为singleTask模式,减少资源耗费。
4. 全局少数模式singleInstance
这是我们最后的一种启动模式,也是我们最恶心的一种模式:在该模式下,我们会为目标Activity分配一个新的affinity,并创建一个新的Task栈,将目标Activity放入新的Task,并让目标Activity获得焦点。新的Task有且只有这一个Activity实例。如果已经创建过目标Activity实例,则不会创建新的Task,而是将以前创建过的Activity唤醒(对应Task设为Foreground状态)。
延伸阅读:
二、activity基本状态
1.Active/Running
一个新 Activity 启动入栈后,它显示在屏幕最前端,处理是处于栈的最顶端(Activity栈顶),此时它处于可见并可和用户交互的激活状态,叫做活动状态或者运行状态(active or running)。
2. Paused
当 Activity失去焦点, 被一个新的非全屏的Activity 或者一个透明的Activity 被放置在栈顶,此时的状态叫做暂停状态(Paused)。此时它依然与窗口管理器保持连接,Activity依然保持活力(保持所有的状态,成员信息,和窗口管理器保持连接),但是在系统内存极端低下的时候将被强行终止掉。所以它仍然可见,但已经失去了焦点故不可与用户进行交互。
3. S较好ped
如果一个Activity被另外的Activity完全覆盖掉,叫做停止状态(S较好ped)。它依然保持所有状态和成员信息,但是它不再可见,所以它的窗口被隐藏,当系统内存需要被用在其他地方的时候,S较好ped的Activity将被强行终止掉。
4. Killed
如果一个Activity是Paused或者S较好ped状态,系统可以将该Activity从内存中删除,Android系统采用两种方式进行删除,要么要求该Activity结束,要么直接终止它的进程。当该Activity再次显示给用户时,它必须重新开始和重置前面的状态。
以上就是关于activity的内容希望对大家有帮助。

相关推荐HOT
更多>>
为什么做因子分析?可以解决什么问题??
一、什么是因子分析?因子分析的起源是这样的,1904年英国的一个心理学家发现学生的英语、法语和古典语成绩非常有相关性,他认为这三门课程背后...详情>>
2023-10-14 23:59:00
文本分析有哪些阶段?
一、文本分析有哪些阶段?要实施文本分析,您需要遵循包含 4 个阶段的系统性流程。第 1 阶段 — 数据收集在此阶段,您从内部或外部资源收集文本...详情>>
2023-10-14 23:00:09
计算机网络可以做什么?
一、什么是计算机联网?计算机联网是指相互连接的计算设备,它们可以相互交换数据和共享资源。这些联网设备利用称为通信协议的规则系统,通过物...详情>>
2023-10-14 19:39:09
云存储有哪些类型?
一、云存储有哪些类型云存储主要有三种类型:对象存储、文件存储和数据块存储。每种类型都有自己的优势和对应的使用场景。1、对象存储组织必须...详情>>
2023-10-14 18:59:10