0

我在我的应用程序中使用了framgents,并且我在平板电脑上具有横向(左右)和纵向(上下)的双窗格布局。

我有一个将片段加载到左侧选择窗格中的活动,然后您可以在某些 Spinner 中选择多个条件进行搜索。在右侧的片段中显示了 ListView 中的搜索结果。

如果我android:configChanges="orientation"在 Manifest.xml 中的此活动中使用搜索结果,则会保存搜索结果,但我在横向模式下上下都有窗格布局,而不是应该的左右。如果我不使用android:configChanges="orientation",我的两个窗格布局都是正确的(横向模式下的左右),但我没有搜索结果,活动重新启动。

我该如何解决?任何想法?

非常感谢。

4

1 回答 1

0

您应该使用 onSaveInstanceState() 和 onRestoreInstanceState()

您需要重新创建视图以使布局看起来正确,但在重新创建时数据将丢失。您必须使用我提到的方法或使用共享首选项来保存这些数据(以便在应用程序退出后保存更长时间的数据)。

不要使用 android:configChanges="orientation"。这可以防止重新创建布局并希望您自己处理它。

有关更多信息,请参阅文档:http: //developer.android.com/training/basics/activity-lifecycle/recreating.html http://developer.android.com/reference/android/content/SharedPreferences.html

于 2014-11-14T15:02:41.050 回答