В вашем Activity.onCreate () вы можете вызвать setTheme (), чтобы установить тему, которую хотите использовать.Обратите внимание, что это должно быть сделано до , когда вы вызываете setContentView () или иным образом создаете свой пользовательский интерфейс.
Имейте в виду, что когда пользователь запускает ваше приложение, система покажет его предварительный просмотр, покабывает.Этот предыдущий основан на создании окна, которое соответствует теме, объявленной в вашем манифесте.Вы хотите, чтобы это максимально соответствовало темам, которые вы собираетесь установить в onCreate (), чтобы сделать переход к вашему приложению максимально плавным.
Если вы хотите, чтобы ваша тема изменялась в зависимости от устройстваКонфигурация - например, версия платформы или размер экрана - вы можете сделать это через ресурсы.Просто объявите разные версии вашей темы для разных конфигураций, которые вы хотите.Формат файла будет выглядеть примерно так:
values/
styles.xml # Required default theme
values-v11/
styles.xml # Theme when running on Android 3.0 or higher
values-xlarge/
styles.xml # Theme when running on an xlarge screen
-v11 позволяет вам иметь версию темы, которая использует новую тему при работе на более новых платформах, а затем возвращается к чему-то совместимому со старыми версиями.Например, в стиле values-v11 родителем вашей темы может быть новый @android: style / Theme.Holo, в то время как основной будет наследоваться от более старого @android: style / Theme.
Также Android 3.0 даетВы можете изменить свою тему во время выполнения, попросив перезапустить вашу активность, например, когда происходит изменение конфигурации: http://developer.android.com/reference/android/app/Activity.html#recreate()
После вызова этого новый созданный экземпляр Activity может вызвать setTheme () с другим значением (например, на основе информации в сохраненном состоянии экземпляра или общим предпочтением), чем тема, которая использовалась ранее.