Android: остановка обновления Активность, когда страница перемещается в портретную ориентацию в альбомное
Я хочу остановить обновление активности, когда перехожу к портретному настроению на ландшафтное настроение, а также хочу, чтобы файл макета загрузки загружался, когда он переходит в портретное к ландшафтному настроению, без обновления действия.
я использую <activity android:name=".Login"
android:configChanges="orientation|screenSize">
но, в этом методе, когда я перехожу на портрет в альбомное настроение, он не загружает файл из папки layout-land. что я должен сделать для этого? Пожалуйста, кто-нибудь, помогите мне.
2 ответа
Вызовите метод setContentView(R.layout.main) в onConfigurationChanged()
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
///in case you have some EditTexts , save their input before setting the new layout.
emailForConfigChanges = emailTextBox.getText().toString().trim();
passwordForConfigChanges = passwordTextBox.getText().toString().trim();
setContentView(R.layout.main);
//Now set the values back to the EditTexts .
}
Вам просто нужно добавить этот метод к вашей деятельности, так как он обрабатывает все изменения ориентации, если вы объявили "ориентацию" в своем манифесте.
РЕДАКТИРОВАТЬ: И если EditTexts теряют свои значения при вращении, получить их значения перед вызовом setContentView() в onConfigurationChanged(). Смотрите редактирование выше.
Я справился с этой проблемой только добавив android:configChanges="keyboardHidden|orientation"
Надеюсь, что это поможет вам.