一.概念
二.创建过程
三.回调方法
四.常用方法
五.生命周期
1.四种状态
2.7种回调方法
六.保存和恢复状态
1.回调方法
1>保存状态 onSaveInstanceState(Bundle outState)
在暂停和停止之间调用;
主动关闭Activity时不会调用;
使用Bundle对象以键值对的形式存储数据。
2>恢复状态 onRestoreInstanceState(Bundle savedInstanceState)
在启动和继续之间调用;
从Bundle对象中获取数据。
2.存储数据
Bundle: 是一个Map集合;可以存储键值对;可以存基本数据,String。
七.Intent 意图
1.定义
2.分类
1>显式意图
1°定义
明确定义目标组件的意图。
2°构造方式
Intent(当前Context,目标类.class)。
3°适应
操作当前应用的组件时可以使用。
2>隐式意图
1°定义
不明确定义目标组件的意图。
2°构造方式
Intent(String action)。
3°适应
操作当前或其他应用的组件时可以使用。
3.属性
1>setComponent(ComponentName) 组成
2>Extra 扩展
3>Action 动作
4>Data 数据
5>Type 类型
6>Category 类别
7>Flag 旗标
addFlags(int);
八.注册和配置
AndroidManifest.xml
1.用户权限
uses-permission android:name=“权限名称";
2.注册
1> <activity name=activity类名>
2><Intent-filter>
<action name =“action字符串(系统内置/自定义)”/>;
<category name =“字符串(系统内置/自定义)”/>;
注意事项:
<category android:name="android.intent.category.DEFAULT"/> 必须要有;
<Intent-filter>可以定义多个;
action Category 可以定义多个。
九.加载,切换和管理
1.任务栈 TaskStack
1>栈的特征:后入先出;
2>在栈顶部的Activity处于显式状态。
2.打开新的
1>startActivity(Intent) 普通打开方式
2>带返回的打开方式
1°带返回的打开方法
startActivityForResult(Intent,requestCode):requestCode 请求码 标记请求的标识。
2°接收返回数据的方法
onActivityResult(int requestCode, int resultCode, Intent data) :requestCode 请求码 标记请求的标识;resultCode结果码 标记返回结果,一般是表示是否确定返回的信息是否需要处理,特殊字符:RESULT_OK和RESULT_CANCELED;data 携带数据的意图。
3°目标Activity返回数据
setResult(int resultCode,Intent data),在关闭之前调用。
3.加载模式 launchMode
1>标准模式 standard
1°默认;
2°没有实例数量的限制。
2>任务栈单例模式 singleTask
1°在任务栈内只能有一个实例;
2°如果要打开的实例在栈的底部,那么就需要把上面的Activity实例移除。
3>任务栈顶部单例模式 singleTop
1°如果实例不在栈的顶部,那就创建新的实例。
4>全局单例模式 singleInstance
1°在全局范围内都是单例模式;
2°让Activity实例独占一个任务栈。