Android - Добавление видов на изменение ориентации - PullRequest
0 голосов
/ 27 февраля 2012

У меня есть вход в систему, который имеет функции восстановления входа и регистрации.Если вы нажмете кнопку восстановления или кнопку регистрации, это добавит новый вид к макету в зависимости от того, что вы нажали.У меня есть onRetainNonConfigurationInstance, который сохраняет, если какой-либо из них работает, и в моем onCreate я проверяю эту строку, но мне кажется, что я не могу добавить представление к макету в onCreate или onPostCreate Activity.Как добавить динамически построенный вид?

Ответы [ 2 ]

1 голос
/ 27 февраля 2012

Я могу неправильно понять ваш вопрос.Извините за мой английский.Но если я правильно понимаю, попробуйте установить configChanges для вашей деятельности в файле манифеста.

<activity android:name="yourActivity"
          android:label="@string/app_name" 
          android:configChanges="orientation"/>
0 голосов
/ 27 февраля 2012

Можно использовать ViewGroup.addView(View v), чтобы добавить представление к ViewGroup (макет - это ViewGroup).

Так что если у вас есть XML-файл, скажем, LinearLayout с некоторым идентификатором,скажем, R.id.root, затем в onCreate() вы можете сначала найти этот макет, используя LinearLayout root = (LinearLayout)findViewById(), затем вызвать root.addView(yourSavedView).

Сначала вы можете попытаться добавить какое-то представление, которое вы ранее раздутали, из XML с помощьюView.inflate().Таким образом, вы узнаете, работает ли добавление в макет (или нет).Затем вы можете попытаться добавить сохраненный вид, чтобы убедиться, что он был сохранен правильно.

...