2013-06-12 8 views
0

Как сохранить состояние фрагмента при изменении его контейнера.Сохранение состояния фрагмента Android при переключении ориентации

Я пытаюсь изменить контейнер фрагмента при переключении с портрета на пейзаж. И я получаю IllegalStateException, говорящий «не могу изменить идентификатор контейнера фрагмента ABC». Пожалуйста, предложите.

ответ

0

Использование Fragmet onSaveInstanceState (...), как описано здесь: http://developer.android.com/guide/components/fragments.html#Lifecycle

+0

Спасибо за ответы. Я использую __onSAveInstanceState__. Вот мой код public void onSaveInstanceState (Bundle outState) { \t \t super.onSaveInstanceState (outState); \t \t, если (isDualPane) \t \t { \t \t \t getSupportFragmentManager() putFragment (outState, "imageDownloadFragment", imageDownloadFragment). \t \t \t getSupportFragmentManager(). PutFragment (outState, "imageShowFragment", imageShowFragment); \t \t \t} \t \t еще \t \t { \t \t \t getSupportFragmentManager() putFragment (outState, "imageDownloadFragment", imageDownloadFragment). \t \t} \t \t \t} – MobileAppDeveloper

+0

Проблема заключается в том, что при замене сохраненного экземпляра фрагмента с контейнером, это дает мое это исключение. «невозможно изменить идентификатор контейнера фрагмента, например, от 123 до 124». – MobileAppDeveloper

+0

Вы объявили фрагмент внутри файла макета как тег <фрагмент ...>? Если это так, пожалуйста, используйте FrameLayout для прикрепления ваших фрагментов с помощью диспетчера фрагментов. – j0n0

Смежные вопросы