Активность Android, как переопределить Android манифеста: configChanges с кодом Java? - PullRequest
5 голосов
/ 30 августа 2011

Я кодирую пользовательский класс Activity (используя его в качестве суперкласса для других моих классов Activity), где он переопределяет многие функции по умолчанию.Одна из этих функций, которую я хочу, это обработка ориентации, и, хотя я могу это сделать, она требует

android:configChanges="orientation"

в манифесте.Есть ли способ применить то же, что и в строке выше, но в коде Java?

Ответы [ 2 ]

2 голосов
/ 30 августа 2011

Вам все равно нужно будет включить атрибут в XML, но вы можете обрабатывать его и в Java; см. мой блог здесь: http://c0deattack.wordpress.com/2010/12/25/dealing-with-screen-orientation-changes-manually/

Редактировать: Вы не можете установить атрибут configChanges программно. Я думаю, это связано с тем, как создается деятельность. Сначала они создаются из XML, а затем вызываются переопределенные методы в реализации вашей деятельности. В API нет ничего, что позволяло бы вам изменять атрибут configChanges.

0 голосов
/ 28 апреля 2019

Вы можете добавить все возможные значения в "android: configChanges" и переопределить метод onConfigurationChanged в Activity, но вызовите Activity.receate () для нужного вам случая.

...