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

Android启动模式及Intent属性----重新认识Android(5)

2017-04-14 15:23 295 查看
Activity的启动模式、Intent的七大属性

 

任务:就是存储app启动的Activity对象的集合

回退栈:按照Activity打开顺序进行次序排放(先进后出)

一、Activity的四种模式:

1、standard:标准

默认的是该模式

只要跳转就会创建对应的实例对象onCreate

2、singleTop:顶部唯一

如果当前的Activity对象在顶部就不再onCreate而是自动调用onNewIntent方法

如果不再顶部或不存在就onCreate

3、singleTask:任务中实例唯一

如果当前的任务中有对应的实例对象,那么就不再onCreate而是自动调用onNewIntent方法

如果对应的前面有Activity对象那么就全部退出

如果不存在就onCreate

4、singleInstance:开辟任务,存储当前Activity实例(不建议使用)

每个回退栈中只会存储一个实例对象

启动模式在清单文件中配置:

<activity android:name=".MainActivity" android:launchMode="standard" />

二、Intent:意图

作用:

1、用于封装程序的”调用意图“

2、实现两个Activity之间的数据交换

3、各种应用程序组件(Service、BroadcastReceiver)之间通信的重要媒介

页面跳转:

1、startActivity:跳转

2、startActivityForResult:回传

Intent的七大属性:

1、Component name 组件名 类类型 组件名表示包名.类名

设置组件名 setComponent()

setClass()

setClassName()

获取getComponent()

2、Action 字符串类型对组件特征描述--定义意图的行为

1.系统提供的action常量

ACTION_VIEW

2.自定义action

setAction() 设置action getAction()获取action

3、Data 数据 一般与action结合到一起用 表示action动作执行的数据资源

URI(统一资源标示符) Data就是uri类型的数据 uri类型中包括数据资源以及数据类型 MIME

scheme://host:port/path

setData() setDataAndType() 设置data

getData() getType() 获取方法

4、Type 数据类型 设置数据的MIME类型 格式 大类型/小类型----字符串

setType()设置Data的类型 getType()获取Data的类型

5、Category 分类 字符串对activity进行分类

addCategory()设置 removeCategory()移除

getCategories()获取分类字符串列表

6、Extras 额外信息

主要在intent激活组件时进行数据的传递

7、flags 标记 int类型

用来标记回退栈中的actvity 以及提供的常量可以设置activity的启动模式

setFlags() 设置标记

getFlags() 获取标记

常用的标记:

FLAG_ACTIVITY_CLEAR_TOP:(效果同Activity LaunchMode的singleTask)

FLAG_ACTIVITY_SINGLE_TOP:(效果同Activity LaunchMode的singleTop)

FLAG_ACTIVITY_NEW_TASK
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: