java - MenuItemCompat.getActionView(menuItem) 返回 null

标签 java android menu android-support-library menuitem

我正在尝试获取MenuItemView

@Override
public boolean onOptionsItemSelected(MenuItem item) {

    View miView = MenuItemCompat.getActionView(item);

    if (miView == null) {
        Log.e(X, "mView is null");
    }
}

但是每次miView都是null

这是我的onCreateOptionsMenu

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    menu.add(0, 0, 0, R.string.Foo);
    return true;
}

我知道 MenuItemCompat 返回 null,因为创建的 Menu 不是来自 support 库,因此 MenuItem > 不能由 MenuItemCompat 类处理,不是吗?

1)我正在寻找像onCreateOptionsMenuCompat这样的方法,有类似的方法吗? 2)如何从MenuItemCompat类获取ActionView?

我做错了什么?

PS:我的项目的minSdkVersion是9

最佳答案

要从菜单项获取 ActionView,您需要首先在其上设置 ActionView。普通菜单项不附带 ActionView。当您需要在菜单中执行一些额外操作(在正常图标和/或文本之外)时,可以使用 ActionView。

为什么要尝试从菜单项获取 View ?您想对菜单项做什么?

关于java - MenuItemCompat.getActionView(menuItem) 返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34199358/

相关文章:

没有固定宽度的CSS水平子菜单

java - 匿名与命名内部类? - 最佳实践?

java - 如何创建自定义按钮形状类

css - 删除 wordpress 管理菜单区域

android - 除非手动注册,否则 BroadcastReceiver 无法正常工作

java - IBM移动优先: sendActionToJS not working with background service in Android

jquery - 在嵌套列表 ul 上保持悬停

java - 比较非英文字符

java - 如何调试 Java 中的二分搜索功能的问题?

java - 让你的 JFrame 成为静态变量是不是很糟糕? ( java Swing )