如何使用导航抽屉菜单项显示指示器

时间:2016-09-24 06:43:52

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

我正在尝试显示带有一些相关菜单项的计数指示器。 我该怎么做呢?我尝试为菜单项创建TextView子项,但它们似乎不起作用。这是我想要实现的模型(参见Gallery选项旁边的notifier)

enter image description here

2 个答案:

答案 0 :(得分:2)

如果您使用NavigationView

  

NavigationView提供了一种构建导航抽屉的便捷方式,   包括使用菜单XML文件创建菜单项的功能。   我们通过设置功能扩展了可能的功能   通过app:actionLayout或使用自定义项目视图   MenuItemCompat.setActionView()。

实施例

<android.support.design.widget.NavigationView
    android:id="@+id/nav_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:fitsSystemWindows="true"
    app:headerLayout="@layout/nav_header"
    app:menu="@menu/drawer_menu" />

drawer_menu.xml

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">

    <group android:checkableBehavior="single">
        <item android:id="@+id/nav_item1"
            app:showAsAction="always"
            android:title=""
            app:actionLayout="@layout/menu_item_layout" />
    </group>
</menu>

menu_item_layout.xml

您可以根据需要进行自定义

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView android:id="@+id/tv_title"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center_vertical"
        android:text="Item text" />
</RelativeLayout>

答案 1 :(得分:1)

您可以创建FrameLayout,其中添加Titile TextView及以上Count TextView,如下所示 吨

<FrameLayout>
    <TextView></TextView> //your titile TextView
    <TextView></TextView> //your count TextView which has gravity of top right and circular background drawable
</FrameLayout>