关闭

Android中的savedInstanceState

1103人阅读 评论(0) 收藏 举报


在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()方法中进行数据的重新获取

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:151220次
    • 积分:3342
    • 等级:
    • 排名:第10064名
    • 原创:192篇
    • 转载:0篇
    • 译文:0篇
    • 评论:19条
    博客专栏
    最新评论