点击按钮时的Android选项菜单

21

我想在按钮点击时显示选项菜单。请问我该怎么做?

1个回答

64
您可以使用openOptionsMenu通过编程方式打开选项菜单。
如果您拥有一个Button,您可以执行以下操作:
button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        openOptionsMenu();
    }
});

否则在您的xml中为Button设置android:onClick="myOnClickMethod",然后使用以下代码:

public myOnClickMethod(View v) {
    openOptionsMenu();
}

在你的活动中。


7
警告--这仅在跨版本和<Application />配置要求方面完全不足。一旦考虑到Honeycomb,ActionBars,ICS,4.3错误等因素,情况并不像这么简单。 - Cory Trese
1
@CoryTrese 请提供一些可能导致此方法失败的场景。如果可能的话,提供解决这些问题的方案将不胜感激。 - Rahul Rastogi
1
我的项目完全基于单个活动,所有片段都支持2.3版本及以上,不使用Android提供的操作栏,而是制作了自己的布局头并将其用作操作栏。 - Rahul Rastogi
当调用openOptionsMenu()时,活动会发生什么?它会停止吗?还是暂停?谢谢。 - iversoncru
1
我可以说这么多:在运行5.0.2的三星Tab S 10.5 LTE上,openOptionsMenu()失败了。它在我的其他设备上可以正常工作。 - Edward Falk
@RahulRastogi 像你上面说的一样,我正在使用布局头作为操作栏。如何在按钮点击时显示溢出菜单。请查看这个SO问题http://stackoverflow.com/questions/33297034/show-overflow-menu-on-image-button-click#33297127并帮助我解决。谢谢 - Royal

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接