Activity生命周期,启动Activity,以及Activity之间数据的传递
2016-09-17 14:18
537 查看
Activity生命周期,启动Activity,以及Activity之间数据的传递
一、感性认知:
1、理解什么是Activity以及上下文。
2、如果合理的控制Activity。
二、理性认知:
1、Activity的声明周期
a、Activity创建启动:
onCreate
onStart
onResume
b、Activity退出:
onPause
onStop
onDestory
c、Activity完全不可见,完全遮盖:
onPause
onStop
d、Activity从完全遮盖到完全显示:
onRestart
onStart
onResume
e、Activity从完全显示到部分显示,即Activity失去焦点:
onPause
f、Activity从部分显示到完全显示,即重新得到焦点:
onResume
2、启动Activity
a、创建Activity
b、注册该Activity:每个Activity在展示执行的时候,必须在AndroidManifest中注册
c、通过startActivity方法启动该Activity。
d、创建Intent对象,把需要启动的Activity封装到意图对象中,然后传给 startActivity方法。
(PS:Intent intent = new Intent(); intent.setClass(Activity.this, LoginActiity.class);)
3、Intent意图
传:
a、Activity启动必须使用Intent对象
b、Intent中可以包装Bundle对象(其中可能存放数据)
c、Intent对象中直接包装数据
intent.putExtra("CONTENT", "哈哈哈");
取:
a、Intent intent = getIntent();
b、intent.getStringExtra(KEY);
4、Bundle
传:
a、Bundle bundle = new Bundle();
b、bundle.putString("KEY", value);
c、intent.putExtra("BUNDLE_KEY", bundle);
取:
a、Intent intent = getIntent();
b、Bundle bundle = intent.getBundleExtra("KEY");
c、String msg = bundle.getString("KEY");
5、Activity的管理
a、Android自身会有一个Activity的管理栈。
涉及Activity的启动模式。(后续讲解)
b、自定义创建一个Activity的管理栈。
6、Activity数据的回传
启动:
a、startActivityForResult(Intent intent, int requestCode);
回传:
b、setResult(int resultCode, Intent data);
接收:
c、onActivityResult(int requestCode, int resultCode, Intent data);
一、感性认知:
1、理解什么是Activity以及上下文。
2、如果合理的控制Activity。
二、理性认知:
1、Activity的声明周期
a、Activity创建启动:
onCreate
onStart
onResume
b、Activity退出:
onPause
onStop
onDestory
c、Activity完全不可见,完全遮盖:
onPause
onStop
d、Activity从完全遮盖到完全显示:
onRestart
onStart
onResume
e、Activity从完全显示到部分显示,即Activity失去焦点:
onPause
f、Activity从部分显示到完全显示,即重新得到焦点:
onResume
2、启动Activity
a、创建Activity
b、注册该Activity:每个Activity在展示执行的时候,必须在AndroidManifest中注册
c、通过startActivity方法启动该Activity。
d、创建Intent对象,把需要启动的Activity封装到意图对象中,然后传给 startActivity方法。
(PS:Intent intent = new Intent(); intent.setClass(Activity.this, LoginActiity.class);)
3、Intent意图
传:
a、Activity启动必须使用Intent对象
b、Intent中可以包装Bundle对象(其中可能存放数据)
c、Intent对象中直接包装数据
intent.putExtra("CONTENT", "哈哈哈");
取:
a、Intent intent = getIntent();
b、intent.getStringExtra(KEY);
4、Bundle
传:
a、Bundle bundle = new Bundle();
b、bundle.putString("KEY", value);
c、intent.putExtra("BUNDLE_KEY", bundle);
取:
a、Intent intent = getIntent();
b、Bundle bundle = intent.getBundleExtra("KEY");
c、String msg = bundle.getString("KEY");
5、Activity的管理
a、Android自身会有一个Activity的管理栈。
涉及Activity的启动模式。(后续讲解)
b、自定义创建一个Activity的管理栈。
6、Activity数据的回传
启动:
a、startActivityForResult(Intent intent, int requestCode);
回传:
b、setResult(int resultCode, Intent data);
接收:
c、onActivityResult(int requestCode, int resultCode, Intent data);
相关文章推荐
- 稳扎稳打JS——this
- Bootstrap响应式侧边栏改进版
- Hibernate 双向一对多表的关联
- Android,底部导航+viewpager+fragment+drawerlayout+toolbar+recyclerview
- Hawq学习笔记 --- 清空数据库中表的数据
- 每天一个linux命令:wc命令
- 软件对称加密与非对称加密
- 悉數細數周王經
- 抽象
- javaWeb Cache技术――OSCache
- Sublime Text3 完美配置
- 使用git建立远程仓库,让别人git clone 下来
- iOS本地通知——每天固定时间发送通知
- ubuntu16.04安装iNode客户端心得总结
- 913课堂笔记
- ubuntu 安装cuda driver失败的问题
- css 背景图片模糊 上面内容不模糊
- 理解Docker(2):Docker 镜像
- 配置tomcat连接器后,启动服务报错“No Certificate file specified or invalid file format"异常
- 重载、构造方法、继承、GUI