使用Android ActionBarCompat在右上角的下拉菜单中显示“更多菜单项”

时间:2013-11-27 14:35:21

标签: android android-actionbar android-actionbar-compat

我正在开发一个带有ActionBarCompat的Android应用程序(由谷歌发布)。在平板电脑中,它显示更多菜单项作为右上角的下拉菜单(图1),但在小型设备(手机)中,您应该点击菜单按钮以查看更多项目(图2)。

enter image description here

enter image description here

有没有办法让手机设备中的平板电脑等右上下拉菜单?如果有,怎么样? 谢谢。

1 个答案:

答案 0 :(得分:4)

当然可以!

首先,在res中创建一个menu.xml>菜单。

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:technicachat="http://schemas.android.com/apk/res-auto"
    android:layout_width="wrap_content"
    android:layout_height="match_parent">

    <item 
        android:id="@+id/dropdown_menu"
        android:showAsAction="ifRoom"
        technicachat:showAsAction="ifRoom"
        android:title="Options"
        android:icon="@drawable/ic_menu_moreoverflow_normal_holo_light">

        <menu>
            <item
                android:id="@+id/item1"
                android:showAsAction="ifRoom"
                technicachat:showAsAction="ifRoom"
                android:title="Refresh"
                android:icon="@drawable/ic_menu_refresh"/>
        </menu>
    </item>
</menu>

单击下拉菜单按钮时,将显示第二个菜单下的所有项目。 您甚至不需要使用onOptionsItemSelected来删除它。

按照惯例继续处理项目选择。

@Override
public boolean onOptionsItemSelected(MenuItem item) 
{   
    switch (item.getItemId())
    {
        case R.id.item1: 
        /*DO STUFF*/
    }

    return super.onOptionsItemSelected(item);
}

如果你想要你的apk的png,它们在/你的sdk路径/ platforms / android-xx / data / res /下你有drawable-hdpi,mdpi等。例如你需要的是ic_menu_moreoverflow_normal_holo_light。< / p>

你在这里! ;)