【问题标题】:How do I change the colour of my sub menu header when using a NavigationView - Android使用 NavigationView 时如何更改子菜单标题的颜色 - Android
【发布时间】:2016-02-11 14:19:18
【问题描述】:

我无法更改子菜单标题的颜色,请参见下图。

我可以更改 NavigationView 的背景、字体颜色和图标颜色,但在子菜单标题上找不到答案。

例如

<android.support.design.widget.NavigationView
    android:id="@+id/navigation_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:background="@color/white"
    app:itemBackground="@color/white"
    app:itemIconTint="@color/dark_green"
    app:itemTextColor="@color/dark_green"
    app:headerLayout="@layout/drawer_header"
    app:menu="@menu/drawer" />

这是我的菜单 xml:

<group android:checkableBehavior="single">
    <item
        android:checked="true"
        android:icon="@drawable/ic_attachment"
        android:title="@string/nav_item_attachment" />
    <item
        android:icon="@drawable/ic_image"
        android:title="@string/nav_item_images" />
    <item
        android:icon="@drawable/ic_place"
        android:title="@string/nav_item_location" />
</group>

<item android:title="@string/nav_sub_menu">
    <menu>
        <item
            android:icon="@drawable/ic_emoticon"
            android:title="@string/nav_sub_menu_item01" />
        <item
            android:icon="@drawable/ic_emoticon"
            android:title="@string/nav_sub_menu_item02" />
    </menu>
</item>

请指教。 :-)。

NavigationView Sub Menu problem

【问题讨论】:

  • 您是否要对添加子菜单标题标题和两个子项的项目进行分组?可能是这样的吗? i.imgur.com/zoDqDKM.png
  • 是的,和你的例子一样。

标签: android submenu textcolor navigationview android-navigationview


【解决方案1】:

试试这个代码来做类似下图的事情

<menu>
    <group android:checkableBehavior="single">


        <item
            android:checked="true"
            android:icon="@drawable/ic_attachment"
            android:title="@string/nav_item_attachment" />
        <item
            android:icon="@drawable/ic_image"
            android:title="@string/nav_item_images" />
        <item
            android:icon="@drawable/ic_place"
            android:title="@string/nav_item_location" />
    </group>
    <group android:checkableBehavior="single">
       <item android:title="@string/nav_sub_menu">
        <menu>
            <item
                android:icon="@drawable/ic_emoticon"
                android:title="@string/nav_sub_menu_item01" />
            <item
                android:icon="@drawable/ic_emoticon"
                android:title="@string/nav_sub_menu_item02" />
        </menu>
      </item>
    </group>



</menu>

与你的代码不同的是代码在&lt;group&gt;...&lt;/group&gt;

【讨论】:

  • 您好 Jorge,请参见上文。
  • @LaraRuffleColes 你有没有在所有代码之外添加 ... ?像这样 ...
  • 是的,抱歉忘记粘贴了。这是我的 GitHub:github.com/lararufflecoles/TutorialStartScreenAndSideMenu/blob/… 不过不用太担心回复,昨晚和另一半讨论过,他说子菜单并没有真正设计为允许适当的修改,这不是你真正搞砸的事情。我只是想惹它!我要放弃了……
【解决方案2】:

@豪尔赫

像这样?

<group android:checkableBehavior="single">
    <item
        android:checked="true"
        android:icon="@drawable/ic_attachment"
        android:title="@string/nav_item_attachment" />
    <item
        android:icon="@drawable/ic_image"
        android:title="@string/nav_item_images" />
    <item
        android:icon="@drawable/ic_place"
        android:title="@string/nav_item_location" />
</group>

<group android:checkableBehavior="single">
    <item android:title="@string/nav_sub_menu">
        <menu>
            <item
                android:icon="@drawable/ic_emoticon"
                android:title="@string/nav_sub_menu_item01" />
            <item
                android:icon="@drawable/ic_emoticon"
                android:title="@string/nav_sub_menu_item02" />
        </menu>
    </item>
</group>

好像没什么区别

【讨论】:

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