#android #rotation
#Android #вращение
Вопрос:
Я разработал приложение для Android, которое будет отображаться только в портретном режиме (Android: screenOrientation =»sensorPortrait»). Это работает нормально, за исключением одного случая:
- удерживайте планшет в портретном режиме и запустите приложение
- введите некоторые данные
- выключите планшет
- переведите планшет в альбомный режим
- включите планшет
==> первый «кадр» моего приложения отображается в альбомном режиме, а затем он поворачивается в портретный режим, что означает, что вызывается onDestroy (), и поэтому мои введенные данные теряются.
Планшет представляет собой планшет tab S2 8 » с Android 7.0
Почему мое приложение сначала отображается в альбомном режиме? Есть ли способ избежать такого поведения (я бы хотел избежать управления onSaveInstanceState () / onRestoreInstanceState () только из-за этого случая)?
Комментарии:
1. Помимо ориентации, есть много других изменений конфигурации. Пожалуйста, используйте
ViewModel
,onSaveInstanceState()
или другие способы сохранения ваших данных при изменениях конфигурации.2. Даже если этот комментарий не отвечает непосредственно на мой вопрос, на самом деле это правильный ответчик. Я совсем новичок в разработке Android и не знал о ViewModel. Мне пришлось это реализовать, и теперь это работает нормально. Спасибо
Ответ №1:
Решением было реализовать ViewModel.