Намерение изменить ориентацию экрана

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


person Ragunath Jawahar    schedule 03.12.2010    source источник


Ответы (4)


Система Android не транслирует Intent, но по умолчанию перезапускает действие. Если вы хотите переопределить это, вы должны переопределить onConfigurationChanged(Configuration) метод своей деятельности. Чтобы вызвать этот метод, вы также должны указать изменение атрибута android:configChanges в файле манифеста.

Узнайте, что и как указывать здесь.

person Vladimir Ivanov    schedule 03.12.2010
comment
Но я имею дело с живыми обоями здесь. Не деятельность. Спасибо за ответ @Vladimir - person Ragunath Jawahar; 03.12.2010
comment
Извините, вы правы. Спасибо за ответ @Владимир Иванов - person Ragunath Jawahar; 03.12.2010

Я думаю, что «android.intent.action.CONFIGURATION_CHANGED» — это то, что вам нужно.

person Alexander Pruss    schedule 31.01.2012

Я не думаю, что это так, но вы всегда можете проверить конфигурацию с повторяющимся интервалом, чтобы увидеть, изменилась ли она. Чтобы получить конфигурацию, вызовите getResources().getConfiguration() и проверьте ориентацию.

person Gallal    schedule 03.12.2010
comment
Ответ @Владимир Иванов лучше. Я не понимал, что WallpaperService является подклассом Context и, следовательно, реализует onConfigurationChanged(Configuration) - person Gallal; 03.12.2010

Хорошо, если приложение не на переднем плане, это

"onConfigurationChanged(Конфигурация)"

метод не работает (например, когда приложение отображает оверлей в службе)

person chksr    schedule 18.10.2017