【问题标题】:Android menuItem setChecked doesn't workAndroid menuItem setChecked 不起作用
【发布时间】:2016-06-11 21:31:06
【问题描述】:

我有这个菜单 filters.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
           <group android:checkableBehavior="single" android:id="@+id/menuGroup_1"  >
                <item android:id="@+id/a_1"  android:title="a1" />
                <item  android:id="@+id/a_2" android:title="a2" />
            </group>
            <group android:checkableBehavior="single" android:id="@+id/menuGroup_2"    >
                <item  android:id="@+id/b_1" android:title="b1" />
                <item android:id="@+id/b_2" android:title="b2"  />
            </group>

</menu>

这里是.java中的方法:

  @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        super.onCreateOptionsMenu(menu);
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.filters, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
         super.onOptionsItemSelected(item);
         item.setChecked(!item.isChecked());

         return true;
    }   

这很好用 checkableBehavior="single",但是当我按下时该项目不会取消选中。还是查了。 (item.isChecked()->true)


我尝试编辑 .xml:

<item android:id="@+id/..."   android:checkable = "true"  />

Now when a select any item they check/uncheck correcltry, 但是这个 checkableBehavior="single" 不起作用。换句话说,我可以检查同一组的两个项目。

【问题讨论】:

    标签: java android xml


    【解决方案1】:

    你应该让onOptionsItemSelected返回true;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-04-21
      • 1970-01-01
      • 2018-05-04
      • 2016-06-02
      • 1970-01-01
      • 2017-11-03
      • 2022-11-17
      • 2016-11-10
      相关资源
      最近更新 更多