我有一个Android应用程序,它的默认主题是Holo.Light,但我想将其更改为Theme.Black。我尝试通过在清单文件中更改样式标记android:theme="@style/AppTheme"
为Theme.Black来实现,但是它找不到该主题。更改主题还需要额外的步骤吗?
实际上,你应该在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"
。在 style 标签前必须添加 android 命名空间。
你可以在这里阅读更多关于样式和主题的信息。
要将您的应用更改为不同的内置主题,只需在您的应用的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:theme="@android:style/Theme.Black"
或者尝试检查您的mainActivity.xml文件,确保其中包含了xmlns:app="http://schemas.android.com/apk/res-auto"这一行