• 当Activity异常终止时,系统会默认为我们保存部分数据 ,如果想自定义保存的数据以供恢复,可以重写onSaveInstanceState()来保存数据以及onRestoreInstanceState()来恢复数据。
  • onSaveInstanceState()是使用Bundle来保存数据,可写 如下测试代码:
   @Override    protected void onSaveInstanceState(Bundle outState) {        outState.putString("mySave","保存的数据");        Log.d("=======","onSaveInstanceState");        super.onSaveInstanceState(outState);    }
  • onRestoreInstanceState()和onCreate()都可以用来恢复数据,在onCreate里需要判断Bundle里面是否有值,而onRestoreInstanceState()的Bundle里面一定是有值的。而且经过测试,onCreate()比onRestoreInstanceState()先执行。
 @Override    protected void onRestoreInstanceState(Bundle savedInstanceState) {        String save=savedInstanceState.getString("mySave");        Log.d("=======","onRestoreInstanceState"+save);        super.onRestoreInstanceState(savedInstanceState);    }
 @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_edit_text);        if(savedInstanceState!=null){            String save=savedInstanceState.getString("mySave");            Log.d("=======","onCreate:"+save);        }          }

运行结果如下:

=======: onSaveInstanceState =======: onCreate:保存的数据 =======: onRestoreInstanceState保存的数据

更多相关文章

  1. android与其他应用的交互
  2. android AlertDialog布局 ——2
  3. android跟服务器使用json传递数据
  4. GreenDao 3.3.0 基本使用与入门 (一)
  5. Android(安卓)数据加密方法 AES DES RSA AndroidKeyStore
  6. android 短信 彩信 数据库 转
  7. Java(Android)数据结构汇总(二)-- Set(下)
  8. android sp文件一个键值保存多条信息
  9. android数据持久化总结

随机推荐

  1. Android沉浸式状态栏三种方式的实现
  2. Eclipse 安装配置指南
  3. Android中Adapter接口及其实现类详解
  4. Android 四大组件 之 bindService流程
  5. Android上下与左右滑动事件处理
  6. android充电指示灯颜色修改
  7. Android开发问题汇总
  8. android 图片点击一下就放大到全屏,再点
  9. Android Lint简介
  10. View的invalidate()方法的源码分析