Activity相关总结
来源:互联网 发布:网络诈骗主题班会总结 编辑:程序博客网 时间:2024/05/22 17:39
1.目标Activity采用透明主题,当前Activity不会执行onPause方法
2.每个Activity实例可以属于不同的任务栈,在标准启动模式下,谁启动了这个Activity,那么这个Activity就运行在他的那个Activity的任务栈中。
3.当用Application的context启动standard的Activity时,会报错,原因是如2.所述,因为Application没有任务栈,加上FLAG_ACTIVITY_NEW_TASK标记启动,因为会创建一个新的任务栈。这个时候其实是以singleTask模式启动的。
4.onNewInstance方法,这个时候如果启动模式是非standard方式,则如果该activity存在,则会回调该方法。这个时候onCreate onStart 不会调用。
5.关于singleTask,当Activity以这种模式启动时,系统会先寻找是否存在该Activity需要的任务栈,如果不存在,则先创建任务栈,然后创建Activity的实例,如果存在任务栈,则看有无Activity的实例,如果存在则调用onNewInstance,否则创建实例。
4.TaskAffinity:当与singleTask一起使用时,具有该模式的Activity的目前任务栈的名字,待启动的Activity会运行在名字和TaskAffinity相同的任务栈中。
当与allowTaskReparenting结合使用时,当应用A的Activity启动应用B的某个Activity后,如果这个Activity的allowTaskReparenting属性为true时,当应用B被启动后,此Activity会直接从应用A的任务栈转移到应用B的任务栈。
5.当在AndroidMenifest和代码中同时添加启动模式,以在代码中添加的而为主。也就是代码添加的优先级高。
二者的各自局限性,在AndroidMenifest中注册的方式无法直接为Activity设定FLAG_ACTIVITY_CLEAR_TOP,而第二中,无法设置singleInstance。
6.Activity的fag
FLAG_ACTIVITY_NEW_TASK:指定singleTask启动模式,效果与在AndroidMenifest相同
FLAG_ACTIVITY_SINGLE_TOP:与singleTop相同
FLAG_ACTIVITY_CLEAR_TOP:当他启动时,在同一个任务栈中的所有位于它上面的Activity都要出栈。如果启动模式为singeTask则被启动的Activity存在,如果被启动的是standard模式的,则它连同它之上的Activity都要出栈。系统会创建新的Activity实例放入栈顶。
7.隐式启动:一个Activity可以有多个intent-filter,一个intent只要能匹配任何一组intent-filter即可成功启动对应的Activity
- Activity相关知识总结
- Activity相关面试总结
- Activity相关总结
- Activity 相关属性总结
- Activity启动模式相关总结
- Android Activity相关知识总结
- 基础总结篇:Activity的task相关
- Activity的一些相关属性总结
- 基础总结篇:Activity的task相关
- 基础总结:Activity的task相关
- 基础总结篇:Activity的task相关
- Activity---基础总结篇之三:Activity的task相关 .
- Activity相关
- Activity相关
- Activity相关
- Activity相关
- activity相关
- # activity相关
- Query+正则+文本框只能输入数字
- 完美的代价
- poj_3034 Whac-a-Mole(dp)
- MYSQL的查增删改
- fork同步问题
- Activity相关总结
- C# 封箱与装箱操作
- 随想
- Windows编程入门-创建第一个Window窗口
- 搭建linux+nginx+mysql+php环境
- Github 上手 --- 分支
- 通过驱动名称得到(T雪工具)驱动对象名_ObReferenceObjectByName_函数的用法
- 排序
- 索引