您的位置:首页 > 移动开发 > Android开发

Android中的savedInstanceState

2015-11-18 19:09 507 查看
在android中,一个界面处于不可见的状态的时候,当系统的内存不足的时候,就有可能会被 系统kill到,那么,当被kill的时候,会调用方法onSaveInstanceState,

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

@Override
public 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);
}

@Override
public 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()方法中进行数据的重新获取
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: