проблема при смене ориентации в андроиде - PullRequest
0 голосов
/ 02 мая 2011

в моем приложении в определенной деятельности у меня есть текстовое представление и кнопка. Всякий раз, когда пользователь нажимает кнопку, XML-файл анализируется поверх текстового представления. В моем XML-файле у меня есть около 50 тегов вопросов, и они анализируются один за другим. Когда пользователю около 30 вопросов, и он поворачивает приложение из пейзажа в портрет или наоборот, вопрос снова начинается с самого начала. Как избежать этих проблем и сохранить в одном вопросе

Ответы [ 3 ]

1 голос
/ 02 мая 2011

Звучит так, как будто вам нужно сохранить состояние приложения во время его вращения. Если вы подключили слушателя Ориентации, то вы сможете справиться с этим довольно легко.

http://developer.android.com/reference/android/view/OrientationEventListener.html

Это должно помочь вам сделать это программно.

Также вы хотите сохранить состояние вашего приложения следующими способами:

onSaveInstanceState(Bundle state)

onRestoreInstanceState(Bundle state)

Эти методы используются для сохранения информации о вашем приложении в процессе его жизненного цикла.

Подробнее читайте здесь: http://developer.android.com/reference/android/app/Activity.html

1 голос
/ 02 мая 2011

В Android при изменении ориентации ваша деятельность воссоздается. У вас есть варианты, чтобы решить эту проблему.

  1. Объявите вашу активность android: configChanges = "direction" в вашем манифесте. Ваша активность не будет уничтожена, и onConfigurationChanged будет вызван с новой конфигурацией.
  2. Вам необходимо сохранить состояние активности до ее уничтожения и восстановить до ее создания.
1 голос
/ 02 мая 2011

Вы должны сохранить позицию вопроса в методе onSaveInstanceState() и восстановить его в методе onRestoreInstanceState().

...