【问题标题】:Overflow icon color in < API 21< API 21 中的溢出图标颜色
【发布时间】:2016-03-03 03:13:57
【问题描述】:

在我的应用程序中,我以这种方式构建了工具栏:

    <android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/LzTheme.AppBarOverlay">

        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:popupTheme="@style/LzTheme.PopupOverlay"/>

    </android.support.design.widget.AppBarLayout>

并以这种方式设置样式:

<style name="LzTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="colorPrimary">@color/LZ_green</item>
    <item name="colorPrimaryDark">@color/LZ_green_dark</item>
    <item name="colorAccent">@color/LZ_yellow</item>
    <item name="android:windowBackground">@color/LZ_white</item>
    <item name="android:textColorPrimary">@color/LZ_dark</item>
    <item name="android:navigationBarColor">@color/LZ_green_dark</item>
</style>
<style name="LzTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar"/>

<style name="LzTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light"/>

在 android >=21 版本中,溢出图标颜色为白色 - 所需的颜色。 Image API 21

在 Api Image API <21

有人能解释一下为什么在21以下的API中如何使图标变白吗??

感谢您的帮助。

【问题讨论】:

  • 您使用的是 AppCompat v23.2.0 吗?您是否按照Support Library 23.2 blog post 中的说明启用支持向量可绘制对象?这是必需的。
  • 是的 23.2.0.我在 V23.1.0 中测试,问题是一样的。但是,在 23.2 中使用支持向量可绘制解决了一个问题。感谢您的帮助。
  • 检查 values-21 中的主题 -> style.xml

标签: android android-layout menuitem android-toolbar android-appcompat


【解决方案1】:

如果您使用的是 AppCompat v23.2.0,则必须按照 Support Library 23.2 blog post 中的说明启用支持向量可绘制对象,因为这是使其工作所必需的:

对于 Gradle 2.0+,这涉及将行 vectorDrawables.useSupportLibrary = true 添加到 build.gradle 文件中的 defaultConfig

【讨论】:

    【解决方案2】:

    在您的应用的基本主题中覆盖下一个样式:

    <item name="actionOverflowButtonStyle">@android:style/Widget.Holo.ActionButton.Overflow</item>
    
    <style name="Widget.Holo.ActionButton.Overflow">
        <item name="android:src">@android:drawable/ic_menu_moreoverflow_holo_dark</item>
        <item name="android:background">?android:attr/actionBarItemBackground</item>
        <item name="android:contentDescription">@string/action_menu_overflow_description</item>
    </style>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-15
      • 2019-05-07
      • 1970-01-01
      相关资源
      最近更新 更多