菜单中有多个高亮显示

时间:2016-01-20 21:30:58

标签: android

我有一个我用于导航抽屉的菜单。菜单有单独的子菜单 - 我希望每个子菜单在单击项目时都有自己的突出显示 - 但是当我单击其中一个子菜单中的项目时,另一个子菜单上的突出显示被清除。是否有行为或方法使其成为一个子菜单上的亮点不会受到另一个子菜单的影响?这是我的xml代码

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:checkableBehavior="single">
    <item
        android:id="@+id/op1"
        android:title="Option 1" />
</group>

<item android:id="@+id/op2"
    android:title="Option 2" >
    <menu>
<group android:checkableBehavior="single">
        <item android:id="@+id/op2sub1"
            android:title="SubOption 1" />
        <item android:id="@+id/op2sub2"
            android:title="SubOption 2" />
</group>
    </menu>
</item>

</menu>

由于

1 个答案:

答案 0 :(得分:0)

您可以将该菜单引用为ListView,致电setChoiceMode(CHOICE_MODE_MULTIPLE),然后自行收听点击。

listView.setChoiceMode(CHOICE_MODE_MULTIPLE);
listView.setOnItemClickListener(new OnItemCLickListener() {
    @Override
    public void onItemClick(AdapterView parent, View view, int position, long id) {
        if(isChecked(position)){
            listView.setItemChecked(position, false);
            //Your other code here
        else {
            listView.setItemChecked(position, true);
            //Your other code here
        }
    }
}