У меня есть приложение для Android с темой Holo.Light по умолчанию, но я хочу изменить ее на Theme.Black. Я попытался сделать это, изменив тег стиля в манифесте android:theme="@style/AppTheme"
на Theme.Black, но его не удается найти. есть ли дополнительные шаги, которые я должен предпринять, чтобы изменить тему?
Как изменить тему приложения по умолчанию на другую тему приложения?
Ответы (4)
На самом деле вы должны определить свои стили в res/values/styles.xml
. Я думаю, теперь у вас есть следующая конфигурация:
<style name="AppBaseTheme" parent="android:Theme.Holo.Light"/>
<style name="AppTheme" parent="AppBaseTheme"/>
поэтому, если вы хотите использовать Theme.Black, измените родительский элемент AppBaseTheme на android:Theme.Black
или вы можете изменить стиль приложения непосредственно в файле манифеста, например: android:theme="@android:style/Theme.Black"
. У вас должно отсутствовать пространство имен android перед тегом style.
Подробнее о стилях и темах можно прочитать здесь.
Чтобы изменить приложение на другую встроенную тему, просто добавьте эту строку под тегом приложения в файле manifest.xml
вашего приложения.
Пример:
<application
android:theme="@android:style/Theme.Holo"/>
<application
android:theme="@android:style/Theme.Holo.Light"/>
<application
android:theme="@android:style/Theme.Black"/>
<application
android:theme="@android:style/Theme.DeviceDefault"/>
Если вы установите для стиля значение DeviceDefault, для него потребуется минимальная версия SDK 14, но если вы не добавите стиль, он все равно будет установлен на устройство по умолчанию.
<uses-sdk
android:minSdkVersion="14"/>
Если вы пытаетесь сослаться на стиль Android, вам нужно поместить туда «android:».
android:theme="@android:style/Theme.Black"
Если это не решит проблему, вам может потребоваться отредактировать свой вопрос с полным файлом манифеста, чтобы мы могли увидеть более подробную информацию.
Или попробуйте проверить файл mainActivity.xml, убедитесь, что онxmlns:app="http://schemas.android.com/apk/res-auto"here
включен