如何将应用默认主题更改为其他应用主题?

时间:2013-10-04 16:25:44

标签: android themes

我有一个Android应用程序,其默认主题为Holo.Light,但我想将其更改为Theme.Black。我尝试通过将清单android:theme="@style/AppTheme"中的样式标记更改为Theme.Black来实现此目的。但它无法找到。我需要采取额外的步骤来改变主题吗?

4 个答案:

答案 0 :(得分:29)

实际上你应该在res/values/styles.xml中定义你的风格。我想你现在有了以下配置:

<style name="AppBaseTheme" parent="android:Theme.Holo.Light"/>
<style name="AppTheme" parent="AppBaseTheme"/>

所以,如果您想使用 Theme.Black ,请将 AppBaseTheme 父级更改为android:Theme.Black,或者您可以直接在清单文件中更改应用程序样式 - { {1}}。在 style 标记之前,您必须缺少 android 命名空间。

您可以阅读有关样式和主题here的更多信息。

答案 1 :(得分:6)

要将您的应用程序更改为其他内置主题,只需在应用程序的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,则需要min SDK版本14,但如果您不添加样式,则无论如何它都将设置为设备默认值。

<uses-sdk
    android:minSdkVersion="14"/>

答案 2 :(得分:1)

如果你想引用一个android风格,你需要把“android:”放在那里

android:theme="@android:style/Theme.Black"

如果这不能解决问题,您可能需要使用完整的清单文件编辑问题,以便我们查看更多详细信息

答案 3 :(得分:-5)

或者尝试检查你的mainActivity.xml,确保这一个     包含xmlns:app="http://schemas.android.com/apk/res-auto"here