0

我需要一些帮助来更改操作栏主题。目前它的全息黑暗,但我希望它是全息光。我已经设定

<style name="ActionBar" parent="android:Theme.Holo.Light">
    <item name="android:actionBarStyle">
        @android:style/Widget.Holo.ActionBar
    </item>        
</style>

在 / 样式中。但后来我需要在android清单文件中的某个地方设置它,但我不知道在哪里。因为操作栏是更大活动的一部分,并且活动具有全息光主题,而不是操作栏。任何人?

4

2 回答 2

15

关于设置主题的重要知识是,默认情况下,当您创建项目时,会在 Values 下创建 3 个文件夹:valuesvalues-v11values-v14

默认情况下,第一件事是打开文件夹styles.xml下的。values那就是我们出错的地方。请看,因为值文件有3 个文件夹,Android 系统将尝试加载在适合当前系统设置的文件夹中定义的样式。也就是说,如果您在 Nexus Running API 级别 17 上运行应用程序,加载的样式将来自values-v14不是来自values.

因此,您必须编辑每个styles.xml文件夹下的每个文件,以确保无论 API 级别如何都能正确加载主题。

styles.xml的 forvalues-v14应该是这样的:

<resources>
<!--
    Base application theme for API 14+. This theme completely replaces
    AppBaseTheme from BOTH res/values/styles.xml and
    res/values-v11/styles.xml on API 14+ devices.
-->
<style name="AppBaseTheme" parent="android:Theme.Holo.Light">
    <!-- API 14 theme customizations can go here. -->
</style>
</resources>

我希望这有帮助。

于 2013-03-12T18:59:10.657 回答
1

如果您希望主题仅应用于一个活动,请在清单文件中添加标签android:theme="@style/ActionBar"内的属性。<activity>

<activity 
    android:name="YourActivityName"
    android:theme="@style/ActionBar"
/>

如果您希望将主题应用于应用程序中的所有活动,请在<application>标签内添加属性

<application 
    android:label="YourAppLabel"
    android:theme="@style/ActionBar" 
/>
于 2013-03-12T18:39:57.900 回答