Мое приложение работает нормально для всех версий Android, но я заметил, что в Android 8.1.0 (Oreo), когда я перехожу на экран с портретной активности на альбомную, и когда я нажимаю кнопку возврата, он показывает ненормальное поведение.
Экран автоматически вращается из альбомной ориентации и возвращается в нормальное состояние. Похоже, Activity перезапускается.
Ниже приведены действия, определенные в файле манифеста.
<activity
android:name = ".Home.TrainingsActivity"
android:configChanges = "keyboardHidden|orientation|screenSize|layoutDirection|locale"
android:screenOrientation = "portrait" />
<activity
android:name = ".Home.ProgrammeActivity"
android:configChanges = "keyboardHidden|orientation|screenSize|layoutDirection|locale"
android:screenOrientation = "landscape" />
Мы также столкнулись с той же проблемой с Oreo. На самом деле мы не можем понять, почему это происходит с конкретной версией ОС. Но у нас было решение этой проблемы. Вы можете добавить принудительную ориентацию к портретной ориентации, когда закончите пейзажную деятельность. добавьте это с помощью метода onBackPressed () в ProgrammeActivity.
@Override
public void onBackPressed() {
super.onBackPressed();
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
это должно решить это ненормальное поведение :)
был бы признателен, если это поможет вам.
Это работает, но у меня 134 действия в альбомной ориентации, что происходит в портретном режиме. Я не думаю, что это хороший ход - переходить к каждому виду деятельности и использовать запрошенную ориентацию.
вы можете справиться с этим с помощью baseActivity, если вы написали еще, напишите свою логику LandScapeBaseActivity и унаследуйте эти действия от этого.
спасибо за решение !!, вот уже 2 часа сижу над этой проблемой ..> <
отлично, это решает проблему, большое спасибо за то, что кто-то не работает, пожалуйста, используйте метод onDestroy ().
Позвольте мне попробовать это решение. Спасибо за быстрый ответ :)