activity保存状态和临时数据
2016-05-05 18:28
531 查看
android中,当我们对activity进行切换时,运行在后台的activity很有可能被GC杀死。相应的,该activity里面的数据也就丢失了。所以为了保存这些临时数据,我们可以通过重写onSaveInstanceState方法来保存一些临时数据。然后在onCreate方法中,获取临时数据。
具体使用如下:
重写之后可以通过切换屏幕方向,测试保存的数据。而一些更重要的数据则可以通过sharedPreferences来进行保存!
注:onSaveInstanceState只有在意外关闭的时候,才会被调用,只建议存储临时数据;
保存和恢复activity的状态数据
具体使用如下:
public class MainActivity extends AppCompatActivity { private EditText editText; private TextView textView; private final String KEY = "KEY"; private SharedPreferences sharedPreferences; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); textView = (TextView) findViewById(R.id.text); editText = (EditText) findViewById(R.id.edit); if(savedInstanceState != null) { editText.setText(savedInstanceState.getString(KEY)); } sharedPreferences = getSharedPreferences("TEST",MODE_PRIVATE); } @Override protected void onResume() { super.onResume(); textView.setText(sharedPreferences.getString(KEY,"")); } @Override public void onSaveInstanceState(Bundle outState, PersistableBundle outPersistentState) { super.onSaveInstanceState(outState, outPersistentState); outState.putString(KEY,editText.getText().toString().trim()); } @Override protected void onPause() { super.onPause(); sharedPreferences.edit().putString(KEY,editText.getText().toString().trim()).commit(); } }
重写之后可以通过切换屏幕方向,测试保存的数据。而一些更重要的数据则可以通过sharedPreferences来进行保存!
注:onSaveInstanceState只有在意外关闭的时候,才会被调用,只建议存储临时数据;
保存和恢复activity的状态数据
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories