ActionBar MenuButton处理程序单击

时间:2014-01-03 19:40:55

标签: java android button menu onclick

即使经过长时间的搜索,我也没有结果。所以我想在这里问一下。

在我的Android应用程序中,我尝试在右上角(在操作栏上)为菜单按钮设置onClick侦听器。按下按钮时,应打开NavigationDrawer。 (我在应用程序中看到过这个。不幸的是,我不知道这个应用程序是如何调用的。)我不想打开菜单。

我已经尝试过了:

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    android:onClick="showdrawer">
    <item />
</menu>

public void showdrawer(View v) {
    mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
    mDrawerLayout.openDrawer(Gravity.LEFT);
}

...但按下按钮时没有任何反应。 有没有办法实现这个?

我非常感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

  

在我的Android应用程序中,我尝试在右上角(在操作栏上)为菜单按钮设置onClick侦听器。

首先,在使用股票操作栏实现时,并非所有设备上的右上角(操作栏上)都有“菜单按钮”。它取决于设备的API级别以及设备是否具有屏幕外的MENU键。

第二,那就是溢出。请不要管它。

第三,无论如何你都无法直接访问该按钮。

  

按下按钮时,应打开NavigationDrawer

导航抽屉通常是通过点击操作栏的左侧侧,在应用程序图标上打开,特别是当它在左边缘有“迷你汉堡包”时。如果您使用DrawerLayout作为导航抽屉,则会为您via ActionBarDrawerToggle处理。

也有可能有一个右侧抽屉,虽然我似乎记得谷歌主张更多的上下文操作。它们没有在书面设计指南中涵盖这一点,但我似乎记得在Android Design in Action视频中看到它。为此,如果右侧抽屉用于活动级上下文操作,您可以在操作栏中使用自己的常规操作项作为触发器。