06 Activity的启动模式 Intent的七大属性的总结
1.Task以及back stack
>Task(任务) 为了完成一个功能 多个Activity的集合,
当你的应用程序启动时 系统会自动创建Task用于管理Activity
>Back stack:(回退栈)按照Activity启动顺序 后进先出
2.Activity的启动模式:(*******)
android:launchMode="standard"
>1,standard:默认模式 (拿来主义) 每次都会创建一个新的Activity(多次实例化)
android:launchMode="singleTop"
>2,singleTop(拒绝堆叠)
>1,没有这个Activity 直接创建
>2,如果有 并且在栈顶 直接拿来使用 调用onNewIntent(Intent intent)方法
>3,如果有 没有在栈顶 重新创建一个Activity实例
>3,singleTask:(独立门户)
>1,没有Activity直接创建
>2,如果有 并且在栈顶 直接拿来使用 调用onNewIntent(Intent intent)方法
>3,如果有 没有在栈顶 将在它上方的 Activity pop出去 自身有回到栈顶位置调用onNewIntent(Intent intent)方法
>4,singleInstance (孤独寂寞)(这个用法不多 浪费空间)
>系统会单独分配一个stack 不允许其他的Activity和他共享一个stack
3.Intent的七大属性
跳转:
1,显示意图跳转:知道往哪里跳转(ComponentName)
2,隐式意图跳转:不知道往哪里跳转 只要action一致就可以(action)
>1,ComponentName:应用组件名称 根据组件名称可以进行显示跳转(知道往哪里跳转)
>2,Action:动作
>1,自定义
<!-- 注册Activity 设置动作 :必须有意图过滤器-->
<activity android:name=".SecondActivity">
<intent-filter >
<action android:name="包名.类名"/>唯一
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
>2,系统提供
Uri:资源定位符
Uri遵循的格式:scheme://host:port/path
scheme:http file content
host:IP
port:端口号
path:请求的路径
>3,Category:(种类) 指明动作的环境
>android.intent.category.LAUNCHER:程序启动的
>android.intent.category.DEFAULT :系统默认的执行方法
>在清单文件中 有action 必然跟category 否则程序报错
>4,Data:数据 描述action数据
>5,Type:数据的类型
>6,putExtra:通信数据的 intent.putExtra(key,value);
>7,Flag:标记 (一般用于启动模式)
>FLAG_ACTIVITY_SINGLE_TOP:和启动模式里的SingleTop一致
>FLAG_ACTIVITY_CLEAR_TOP:
和SingleTask相似 >如果当前Activity存在 不在栈顶
首先将上方的Activity pop出 将自身的Activity销毁 重新创建一个Activity 在栈顶
>如果当前Activity存在 在栈顶 将将自身的Activity销毁 重新创建一个Activity 在栈顶
>FLAG_ACTIVITY_NEW_TASK
>1,不在清单文件中设置 和默认启动模式是一致的
>2,在清单文件中设置属性
android:taskAffinity="aa.bb"
android:allowTaskReparenting="true"
taskAffinity用于指定当前Activity(activity1)所关联的Task,
allowTaskReparenting用于配置是否允许该activity可以更换从属task
06 Activity的启动模式 Intent的七大属性的总结的更多相关文章
- 无废话Android之activity的生命周期、activity的启动模式、activity横竖屏切换的生命周期、开启新的activity获取他的返回值、利用广播实现ip拨号、短信接收广播、短信监听器(6)
1.activity的生命周期 这七个方法定义了Activity的完整生命周期.实现这些方法可以帮助我们监视其中的三个嵌套生命周期循环: (1)Activity的完整生命周期 自第一次调用onCrea ...
- android Activity的启动模式与flag的见解
最近做一个安卓项目,想要实现的效果就是:当打开一个按钮的时候,启动了一个A功能,当用户返回到桌面再继续进去的时候,不过之前在哪个Activity,都会先跳转到A功能的那个界面,当用户点击返回的时候,再 ...
- android Activity的启动模式
Android中Activity启动模式详解 在Android中每个界面都是一个Activity,切换界面操作其实是多个不同Activity之间的实例化操作.在Android中Activity的启 ...
- Activity的启动模式(android:launchMode)
在android里,有4种activity的启动模式,分别为: “standard” (默认) “singleTop” “singleTask” “singleInstance” 它们主要有如下不同: ...
- 4种activity的启动模式
在android里,有4种activity的启动模式,分别为: “standard” (默认) “singleTop” “singleTask” “singleInstance” 它们主要有如下不同: ...
- Activity的启动模式及回退栈的概念
Activity的启动模式 standard 正常模式 在创建一个新的activity的时候,直接在栈顶创建一个新的activity singleTop 顶部单个 在创建一个新的activity的时候 ...
- Activity 的启动模式
好久没用过那几种activity的启动模式了,如今看到singletop竟然傻了眼,完全忘记了这几种启动模式的区别!隧将两年前的总结翻出来,通读一遍那晦涩难懂的记录,又理解了一遍,在以前记录的基础上, ...
- Activity LauchMode启动模式(转载)
转载于:http://www.cnblogs.com/plokmju/p/android_ActivityLauncherMode.html 在一个Android应用中,不可避免的会包含多个Activ ...
- Android开发艺术2之Activity的启动模式
Activity是Android的四大组件之一,他的重要性毋庸置疑,对于这么重要的一个组件,我们首先要知道这些都是由系统进行管理和回调的,要理解Activity的启动模式,我们首先来了解一下Andro ...
随机推荐
- 浅谈MySQL中优化sql语句查询常用的30种方法
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索 ...
- A TensorBoard plugin for visualizing arbitrary tensors in a video as your network trains.Beholder是一个TensorBoard插件,用于在模型训练时查看视频帧。
Beholder is a TensorBoard plugin for viewing frames of a video while your model trains. It comes wit ...
- 数组中存放对象之java中定义类数组存放类
public class ClassArrayDemo { int age; String name; ClassArrayDemo(int age, String name) { this.age ...
- 使用RestTemplate访问restful服务时遇到的问题
可以通过通过wireshark抓包,使用Postman发送请求 wireshark是非常流行的网络封包分析软件,功能十分强大.可以截取各种网络封包,显示网络封包的详细信息.使用wireshark的人必 ...
- net框架运行原理
核心是CLR(通用语言运行时), c#或者其它各种语言编译原理:将原代码通过相对的编译器(语法检查原代码分析)生成IL代码托管(IL也称托管代码),最后得到一个托管模块,一个或多个托管模块组成程序集( ...
- 含有分类变量(categorical variable)的逻辑回归(logistic regression)中虚拟变量(哑变量,dummy variable)的理解
版权声明:本文为博主原创文章,博客地址:,欢迎大家相互转载交流. 使用R语言做逻辑回归的时候,当自变量中有分类变量(大于两个)的时候,对于回归模型的结果有一点困惑,搜索相关知识发现不少人也有相同的疑问 ...
- CF | Alyona and Mex
Someone gave Alyona an array containing n positive integers a1, a2, ..., an. In one operation, Alyon ...
- Java第10次实验(数据库)
参考资料 数据结构实验参考文件 MySql操作视频与数据库相关jar文件请参考QQ群文件. 第1次实验 1. MySQL数据库基本操作 完整演示一遍登录.打开数据库.建表.插入 常见错误:语句后未跟; ...
- [Gradle系列]Gradle打包apk多版本,多渠道,多环境,多功能,多模块随心所欲
Tamic: http://blog.csdn.net/sk719887916/article/details/53411771 开始 上篇Gradle发布Module(Maven)到jcenter, ...
- 给大家安利一个学习angular2的视频网站
本文地址:http://blog.csdn.net/sushengmiyan 本文作者:苏生米沿 视频地址: https://egghead.io/courses/angular-2-fundamen ...