Activity的生命周期以及 退出时Bundle的数据保存
来源:互联网 发布:手机桌面软件下载 编辑:程序博客网 时间:2024/06/05 15:50
创建Activity 时,运行onCreat();
开始运行Activity 时,运行onStart();
该Activity处于最顶栈(即正在运行) 时,运行onResume();
启动另一个Activity 但 没有完全遮挡住原先这个Activity(例如启动一个dialog Activity)或者结束这个Activity 时,运行onPause();
启动另一个Activity而且完全覆盖原先这个Activity 或者 结束这个Activity 时,运行onStop();
Activity被销毁 时,运行onDestroy();
Activity从onStop()状态返回到界面时,运行onRestart();
如果该Activity已经被系统回收,则重新运作onCreat();
被系统回收时,Activity会先运行onSaveInstanceState(Bundle outState);
Bundle类型的参数是为了保存Activity被销毁前的参数,通常用方法outState.putString(key,String);其中key用字符串表示就可以了。
@Override
public void onSaveInstanceState(Bundle outState, PersistableBundle outPersistentState) {
super.onSaveInstanceState(outState, outPersistentState);
String tempData = "Something you just typed";
outState.putString("data_key",tempData);
}
public void onSaveInstanceState(Bundle outState, PersistableBundle outPersistentState) {
super.onSaveInstanceState(outState, outPersistentState);
String tempData = "Something you just typed";
outState.putString("data_key",tempData);
}
而且要在创建Activity时的onCreat()里添加:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if(savedInstanceState !=null){
String tempData = savedInstanceState.getString("data_key");
}
}
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if(savedInstanceState !=null){
String tempData = savedInstanceState.getString("data_key");
}
}
当然bundle也可以与intent结合一起传递数据,就是把数据保存到Bundle对象中,再将Bundle对象保存到Intent对象中,再到其他的Activity时,取出Intent中的Bundle,再取出数据即可。
0 0
- Activity的生命周期以及 退出时Bundle的数据保存
- activity异常生命周期下的退出数据保存的方法
- Android应用中,退出activity时对一些资源以及状态的操作保存,可以在生命周期的哪个函数中进行?
- 退出Activity时,保存edittext的内容
- Activity生命周期,启动Activity,以及Activity之间数据的传递
- 有关Activity生命周期以及状态的保存操作的选择
- Activity的生命周期,状态保存,窗口显示,取得返回结果,安全退出
- 退出Dialog时,Activity的生命周期运行情况
- Intent启动活动以及Intent传递数据&activity的生命周期
- activity以及fragment的生命周期
- Bundle 保存各类型数据的总结
- <Bundle>通过bundle进行Activity之间的数据传递
- bundle实现Activity之间的数据传递
- Android activity 之间的数据传递 bundle
- Android退出时退出所有Activity的通用类,ActivityManager 以及退出的dialog
- 保存Activity数据:onSaveInstanceState()与Bundle对象
- activity 生命周期发生变化的时候,用fragment保存数据或者异步任务数据的文章
- Activity切换时保存数据的方法
- vc6.0常见错误fatal error C1083: Cannot open precompiled header file: 'Debug/**.pch'
- C语言如何分离一个数的高低位,如何将2个字节变成一个字节
- Git创建、合并和删除分支
- 欢迎使用CSDN-markdown编辑器
- 单例模式与线程安全问题浅析
- Activity的生命周期以及 退出时Bundle的数据保存
- Android Studio中快捷键(持续更新)
- 浅谈initWithNib,initWithNibName,initWithCoder,awakeFromNib ,initWithFrame
- Android Studio学习记录
- 1047: [HAOI2007]理想的正方形
- linux学习笔记
- uwsgi的配置注意事项
- NHibernate Expression 条件查询字符转换解释
- 常识——数学的常识