ActionMode菜单不隐藏菜单项

时间:2015-04-05 12:51:50

标签: android menuitem android-appcompat android-menu android-actionmode

我在列表视图中使用动作模式进行多选。我遇到的问题是,在模拟器上进行测试时,我在动作模式菜单中指定隐藏的图标永远不会隐藏在溢出菜单中,尽管在预览中它是。我在这里使用AppCompat主题是我的menu.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">
    <item
        android:id="@+id/tag"
        android:enabled="true"
        android:title="Tag"
        android:icon="@drawable/in_ic_tag_white_24dp"
        android:orderInCategory="1"
        app:showAsAction="always" />

    <item
        android:id="@+id/delete"
        android:enabled="true"
        android:title="@string/label_delete"
        android:icon="@drawable/in_ic_delete_white_24dp"
        android:orderInCategory="2"
        app:showAsAction="never" />

</menu>

2 个答案:

答案 0 :(得分:0)

如果我的问题正确,您会尝试使用showAsAction隐藏您的MenuItem。 “从不”意味着在这种情况下它不会显示为图标,而是在溢出菜单中。

也许您正在寻找可见性。例如:

android:visible="false"

以编程方式处理的文档:http://developer.android.com/reference/android/view/MenuItem.html#setVisible(boolean)

答案 1 :(得分:0)

使用操作模式时,“ showAsAction”属性不起作用:

更改:app:showAsAction =“ never”

至:android:showAsAction =“ never”

  • 或使用以下代码行:

menu.findItem(R.id.XXX).setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);