【问题标题】:Show custom action item menu on Menu button click在菜单按钮单击时显示自定义操作项菜单
【发布时间】:2013-12-11 14:11:32
【问题描述】:

我正在尝试创建一个自定义菜单按钮作为操作项, 这是我使用的xml资源

<menu 
    xmlns:spyder="http://schemas.android.com/apk/res-auto"
    xmlns:android="http://schemas.android.com/apk/res/android" >

<item android:id="@+id/menu_search_customers"
      android:title="@string/hello_world"
      android:icon="@android:drawable/ic_menu_search"
      spyder:showAsAction="ifRoom|collapseActionView"
      spyder:actionViewClass="android.support.v7.widget.SearchView" />

    <item
        android:id="@+id/menu_overflow"
        android:icon="@drawable/abc_ic_menu_moreoverflow_normal_holo_light"
        android:orderInCategory="11111"
        spyder:showAsAction="always">
        <menu>
            <item
                android:id="@+id/menu_overflow_item1"
                spyder:showAsAction="never"
                android:title="Item1"/>
            <item
                android:id="@+id/menu_overflow_item2"
               spyder:showAsAction="never"
                android:title="Item2"/>
        </menu>
</item>
</menu>

这是输出

当我按预期单击操作项时菜单弹出,我也想在硬件菜单按钮单击时弹出它。这可能吗?

【问题讨论】:

标签: android android-actionbar android-menu popupmenubutton


【解决方案1】:

您可以使用以下函数捕获硬件菜单点击。

public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_MENU) {
        openOptionsMenu()
        return true;
    }
    return super.onKeyDown(keyCode, event);
}

【讨论】:

  • 此代码用于打开默认的 android 选项菜单,但我使用 ActionBar 操作项作为菜单按钮,我希望它的行为类似于默认选项菜单。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-26
  • 1970-01-01
  • 2017-12-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多