【问题标题】:Checkboxed option in Android menu does not workAndroid 菜单中的复选框选项不起作用
【发布时间】:2015-11-23 20:20:08
【问题描述】:

我正在尝试将复选框添加到我的 Android 应用程序的菜单中。但我不知道为什么带有android:checkable="true" 属性的项目有这个正方形的复选框,但表现得像其他项目。我必须用java代码写一些东西吗?我可以读取值,但点击不会改变它的值...

我的菜单\main.xml:

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

    <item
        android:id="@+id/menu_settings"
        android:title="@string/settings"/>
    <item
        android:id="@+id/menu_tests"
        android:title="@string/i_want_to_test"/>
    <item
        android:id="@+id/menu_translating"
        android:enabled="false"
        android:title="@string/i_want_to_translating"/>
    <item
        android:id="@+id/menu_funmade"
        android:checkable="true"
        android:title="Enable funmade"/>

</menu>

看:

最后一个选项的行为与其他选项一样,没有指定行为。我可以点击并手动关闭并且状态不会改变。希望你能帮忙。

安德烈

【问题讨论】:

    标签: android xml checkbox menuitem android-menu


    【解决方案1】:

    当用户从选项菜单中选择一个项目时(包括操作 操作栏中的项目),系统调用您的活动 onOptionsItemSelected() 方法。

    以下代码位于 Activity 的 onOptionsItemSelected(MenuItem item) 方法中。

    代码:

    switch (item.getItemId()) {
            case R.id.menu_settings:
                // Specify actions for the menu click
                return true;
            case R.id.menu_tests:
                // Specify actions for the menu click
                return true;
            case R.id.menu_translating:
                // Specify actions for the menu click
                return true;
            case R.id.menu_funmade:
                // Specify actions for the menu click
                if (item.isChecked()) {
                    item.setChecked(false);
                } else {
                    item.setChecked(true);
                }
                return true;
        }
        return super.onOptionsItemSelected(item);
    

    您可以查看official docs 了解有关可检查菜单的更多详细信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-07
      • 1970-01-01
      • 2017-04-18
      • 2014-07-15
      • 2012-04-28
      相关资源
      最近更新 更多