Изменение ориентации деятельности в фоновом режиме

Manos Rasidakis спросил: 28 марта 2018 в 02:05 в: java

Первая активность (заблокированная портретная ориентация) имеет 2 кнопки, которые открывают вторую активность, но кнопка A открывает ее в портретном режиме, а кнопка B открывает ее в альбомной ориентации.

Проблема заключается в том, что когда кнопка B открывает второе действие (, которое находится в конфигурации диалога, и первое действие отображается в фоновом режиме ) первая активность меняет ориентацию со второй, таким образом перезапуская.

Вопрос: A) Могу ли я предотвратить первичную активность от изменения ориентации и B) Может i отключить анимацию смены ориентации, чтобы экран не выглядел как поворот от портрета к пейзажу, а просто вместо этого стал ландшафтом?

PS Для вопроса A) я знаю, как использовать сохраненное состояние, но я хочу избежать он.


1 ответ

Есть решение
Rohan Lodhi ответил: 06 апреля 2018 в 08:25

Использовать код ниже в манифесте:

android:configChanges="keyboardHidden|orientation|screenSize" 
 android:screenOrientation="portrait"

Отредактировано: К сожалению, нет способа управлять анимацией вращения. Это делается далеко за пределами вашего приложения, глубоко в диспетчере окон, где он делает снимок экрана текущего экрана, изменяет размеры и перестраивает пользовательский интерфейс за ним, а затем запускает встроенную анимацию для перехода от исходного снимка экрана к новому восстановленному UI. Невозможно изменить это поведение при изменении поворота экрана

Manos Rasidakis ответил: 06 апреля 2018 в 06:05
Этот код не работает
Rohan Lodhi ответил: 06 апреля 2018 в 07:51
Извините, что нет способа управлять анимацией вращения. Это делается далеко за пределами вашего приложения, глубоко в диспетчере окон, где он делает снимок экрана текущего экрана, изменяет размеры и перестраивает пользовательский интерфейс за ним, а затем запускает встроенную анимацию для перехода от исходного снимка экрана к новому восстановленному UI. Нет способа изменить это поведение при изменении поворота экрана.
Manos Rasidakis ответил: 06 апреля 2018 в 08:06
Измените свой ответ на комментарий выше, чтобы я мог нажать решено
Rohan Lodhi ответил: 06 апреля 2018 в 08:25
@ManosRasidakis Я редактировал это!