如何从操作栏项创建下拉选项菜单?

时间:2013-08-04 16:53:25

标签: android actionbarsherlock android-actionbar layout-inflater inflate

我正在使用actionbarsherlock并在我的操作栏中设置了一个项目。现在我希望点击该项目,会出现一个下拉菜单,显示另外两个选项。我该怎么办?到目前为止,这是我的代码:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
   com.actionbarsherlock.view.MenuInflater inflater = getSupportMenuInflater();
   inflater.inflate(R.menu.activity_main, (com.actionbarsherlock.view.Menu) menu);
   return super.onCreateOptionsMenu(menu);
}


@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch(item.getItemId()) {
    // ?????
    // ?????

    }
}

1 个答案:

答案 0 :(得分:1)

根据Defining Menus via XML Guide

  

您可以通过添加<menu>元素作为<item>的子元素,在任何菜单(子菜单除外)中为项目添加子菜单。当您的应用程序具有许多可以组织成主题的功能时,子菜单非常有用,例如PC应用程序菜单栏中的项目(文件,编辑,查看等)。

他们提供了一个示例XML:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/file"
          android:title="@string/file" >
        <!-- "file" submenu -->
        <menu>
            <item android:id="@+id/create_new"
                  android:title="@string/create_new" />
            <item android:id="@+id/open"
                  android:title="@string/open" />
        </menu>
    </item>
</menu>

在这种情况下,您的onOptionsItemSelected会查找create_newopen个操作(file项目将由菜单本身处理。)