2015-04-07 8 views
0

Я создаю простую игру для Android, и я бы хотел работать как в портретном, так и в пейзажном виде. Я создал отдельные файлы xml в layout и layout-land. В моем файле манифеста есть android:configChanges="orientation|screenSize|keyboardHidden".Android - Переключение ориентации с портрета/пейзажа сбрасывает атрибуты по умолчанию

Проблема возникает при повороте экрана во время игры. Есть некоторые изображения, которые начинают игру как невидимые, а затем становятся видимыми во время игры. Если во время игры меняется ориентация экрана, все атрибуты этих изображений возвращаются к настройкам по умолчанию в XML-файле как невидимые, поэтому теперь игра становится неиграбельной, потому что все внезапные изображения исчезают.

Мой вопрос: как сохранить обновленные атрибуты для всех моих представлений при возникновении ориентации экрана?

Кроме того, у меня было заставить активность, чтобы начать правильно, добавив это в методе onCreate:

if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT)    { 
     setContentView(R.layout.activity_main); 
    }else { 
     setContentView(R.layout.activity_main_land); 
    } 

, а также добавлены вручную onConfigurationChanged метод, чтобы заставить корректное отображение на изменение ориентации. Мне нужно сделать все эти обновления атрибутов вручную здесь?

ответ