Android菜单中的2个单一可检查组

时间:2016-02-02 15:58:45

标签: android menu

我在Android中有两个小组,都有单一的可检查行为。

<item
    android:id="@+id/sort_item"
    android:title="One">
    <menu>
        <group
            android:id="@+id/menu_group_sort"
            android:checkableBehavior="single">
            <item
                android:id="@+id/nav_sort_new"
                android:title="@string/menu_new" />
            <item
                android:id="@+id/nav_sort_hot"
                android:title="@string/menu_hot" />
            <item
                android:id="@+id/nav_sort_top"
                android:title="@string/menu_top" />
        </group>
    </menu>
</item>

<item
    android:id="@+id/filter_item"
    android:title="Two">
    <menu>
        <group
            android:id="@+id/menu_group_filter"
            android:checkableBehavior="single">
            <item
                android:id="@+id/nav_category_all"
                android:title="@string/menu_all" />
            <item
                android:id="@+id/nav_category_business"
                android:title="@string/menu_business" />
            <item
                android:id="@+id/nav_category_technology"
                android:title="@string/menu_technology" />
            <item
                android:id="@+id/nav_category_politics"
                android:title="@string/menu_politics" />
        </group>
    </menu>
</item>

我想要的是当你从一个组中选择一个项目时,它是单个&#39;在该组内。发生的事情是,这两个群体正在分享什么&#39;已被选中,而且根本无法正常工作。

我已经阅读了有关此内容的所有其他帖子,并且没有任何解决方案(如果有的话)有效。有人知道吗?这似乎是一个非常基本的东西..

1 个答案:

答案 0 :(得分:1)

这似乎是NavigationDrawer(版本23)中的一个错误,如this answer中所述

  

NavigationView的第23版确实彻底改变了结构   菜单已构建 - 它现在基于RecyclerView,如中所述   发布Google+帖子的评论。

     

从NavigationMenuPresenter的Adapter源代码(控件   如何显示和存储菜单项),它只显示一个   已检查的项目已保存,并且检查一个项目取消选中其他已选中   项目

我会在build.gradle中一直回到22.0.0:

com.android.support:design:22.0.0

或者对onNavigationItemSelected(MenuItem item)功能中的已检查项目进行手动验证。