替代onSaveInstanceState(Bundle)和onRestoreInstanceState(Bundle),用于在更改方向时保存数据

时间:2014-06-11 08:10:50

标签: android android-orientation

当我将方向从纵向更改为横向时,数据会丢失。 我知道oncreate会被再次调用,所有内容都会丢失。

我知道要保存数据,我已将数据放在 onSaveInstanceState()方法的Bundle中,并使用 onRestoreInstanceState()方法获取数据。 例如:Example!!

但这真的很烦人且时间紧迫。

是否无法在不丢失数据的情况下更改方向?

2 个答案:

答案 0 :(得分:0)

您可以使用SharedPreferences并将数据保存在那里,当方向发生时,您可以获得数据。您按照教程here

但我真的不建议仅在方向改变时使用它。在方向改变时,OnSaveIntance比SharedPreferences更可取,但是因为你问的是另一个是什么。

答案 1 :(得分:0)

我,添加配置对清单文件中活动的更改:

<activity>
     android:name=".YourActivity"
     android:configChanges="orientation|keyboardHidden|screenSize"
     ...

检查此项以获取有关configChanges的更多详细信息: http://developer.android.com/guide/topics/manifest/activity-element.html