AppCompat Light 返回黑色操作栏而不是白色

Posted

技术标签:

【中文标题】AppCompat Light 返回黑色操作栏而不是白色【英文标题】:AppCompat Light returns black action bar instead of white 【发布时间】:2014-06-02 08:45:26 【问题描述】:

我在启动 android 项目并选择 Holo 灯时遇到问题,应该创建一个带有白色操作栏的项目。但我的操作栏是黑色的(还有子菜单)。

但是,如果我使用菜单按钮而不是从操作栏中打开子菜单,则在左下角,子菜单将以 Light 主题的样式出现。

为什么我会遇到这个奇怪的问题?

这是清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.actionbar"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
    android:minSdkVersion="9"
    android:targetSdkVersion="19" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name="com.example.actionbar.MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

这是 style.xml:

<resources>

<!--
    Base application theme, dependent on API level. This theme is replaced
    by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
-->
<style name="AppBaseTheme" parent="Theme.AppCompat.Light">
    <!--
        Theme customizations available in newer API levels can go in
        res/values-vXX/styles.xml, while customizations related to
        backward-compatibility can go here.
    -->
</style>

<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
    <!-- All customizations that are NOT specific to a particular API-level can go here. -->
</style>

</resources>

【问题讨论】:

【参考方案1】:

我想你忘记了@style/ 属性如下:

<style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light">  

从下面的 cmets 更新: 确保 res/values-v14/ 中的 style.xml 与上述代码片段的主题相同。 让我知道这是否有帮助。

【讨论】:

嗨。不,我遇到了同样的问题。 @user2030307 您是否尝试在其他设备上进行测试?你目前的设备是什么? 在 values-v14 中将您的 style.xml 设为相同的父主题。 这就是问题所在! values-v14 文件夹中的主题是 @user2030307 不,这不是错误。这是您创建 Android 项目时的当前方式。 SDK 为您提供 Light 主题以降低 API 和 DarkActionBar 以提高 API。与 Holo 主题相同。 - 很高兴能提供帮助。

以上是关于AppCompat Light 返回黑色操作栏而不是白色的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 AppCompat.Light.NoActionBar 删除操作栏下方的阴影?

为啥导入不了heme.appcompat.light.darkactionbar

在 iOS 7 中更新导航栏而不更改视图

在Theme.AppCompat.Light中添加图标

theme.appcompat.light.darkactionbar 怎么调整title的颜色

Theme.AppCompat.Light的解决方法