在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");
}
重新恢复数据
if (savedInstanceState != null) {
}
当然也可以先将相关数据保存到本地目录 ,然后在activity重建的时候 ,在oncreate()方法中进行数据的重新获取