【问题标题】:NavigationView's color when checked选中时 NavigationView 的颜色
【发布时间】:2015-08-05 12:53:42
【问题描述】:

通常,ItemTextColor 和 ItemIconTint 会更改为 android:colorPrimary 然后检查,但为什么它更改为白色(Theme.AppCompat 的原色)而不是我的自定义原色?

style.xml:

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="android:colorPrimary">@color/color_primary</item>
    <item name="android:colorPrimaryDark">@color/color_primary_dark</item>
    <item name="android:colorAccent">@color/color_accent</item>
    <item name="android:statusBarColor">@android:color/transparent</item>
</style>

<color name="color_primary">#3F51B5</color>
<color name="color_primary_dark">#303F9F</color>
<color name="color_accent">#FF4081</color>

activity_main.xml:

<android.support.design.widget.NavigationView
    android:id="@+id/navigation"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:orientation="vertical"
    android:fitsSystemWindows="true"
    app:headerLayout="@layout/layout_drawer"
    app:menu="@menu/menu_drawer" />

【问题讨论】:

    标签: android android-layout android-design-library


    【解决方案1】:

    AppCompat 主题使用colorPrimary 和相关属性,不带android: 前缀。因此,如果您将 style.xml 更改为以下内容,它应该可以工作。 (或者至少,这对我来说是这样的。)

    <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="colorPrimary">@color/color_primary</item>
        <item name="colorPrimaryDark">@color/color_primary_dark</item>
        <item name="colorAccent">@color/color_accent</item>
        <item name="android:statusBarColor">@android:color/transparent</item>
    </style>
    
    <color name="color_primary">#3F51B5</color>
    <color name="color_primary_dark">#303F9F</color>
    <color name="color_accent">#FF4081</color>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-14
      • 1970-01-01
      相关资源
      最近更新 更多