《Android应用开发攻略》——2.4 在用户旋转设备时保存数据
2.4 在用户旋转设备时保存数据
Ian Darwin
2.4.1 问题
当用户旋转设备时,Android通常销毁并重新创建当前活动。你希望在这一周期中保留某些数据,但是在此期间活动中的所有字段都将丢失。
2.4.2 解决方案
对此有多种解决方案。如果所有数据都由简单类型组成(包括String),或者是Serializable类型,就可以在传入的Bundle的onSaveInstanceState()中保存数据。
另一种解决方案是在活动中返回一个任意的对象,实现onRetainNonConfigurationInstance()保存某些值;在onCreate()接近结束的地方调用getLastNonConfigurationInstance()查看是否有过去保存的值,如果有,相应地为字段赋值。
2.4.3 讨论
使用onSaveInstanceS