Android中的savedInstanceState

来源:互联网 发布:软件集成工具箱制作 编辑:程序博客网 时间:2024/06/02 01:59


在android中,一个界面处于不可见的状态的时候,当系统的内存不足的时候,就有可能会被 系统kill到,那么,当被kill的时候,会调用方法onSaveInstanceState,

那么我们可以在这里面保存一些数据,

@Overridepublic void onSaveInstanceState(Bundle savedInstanceState) {        savedInstanceState.putBoolean("MyBoolean", true);        savedInstanceState.putDouble("myDouble", 1.9);        savedInstanceState.putInt("MyInt", 1);        savedInstanceState.putString("MyString", "Welcome back to Android");        // etc.        super.onSaveInstanceState(savedInstanceState);}@Overridepublic void onRestoreInstanceState(Bundle savedInstanceState) {        super.onRestoreInstanceState(savedInstanceState);        boolean myBoolean = savedInstanceState.getBoolean("MyBoolean");        double myDouble = savedInstanceState.getDouble("myDouble");        int myInt = savedInstanceState.getInt("MyInt");        String myString = savedInstanceState.getString("MyString");}



当保存了相关状态后,我们也可以在onCreate()方法中进行数据的恢复


重新恢复数据if (savedInstanceState != null) {  }

当然也可以先将相关数据保存到本地目录 ,然后在activity重建的时候 ,在oncreate()方法中进行数据的重新获取

0 0
原创粉丝点击