无法在溢出中显示3个虚线菜单 - SherlockActionBar

时间:2013-07-29 17:43:10

标签: android menu actionbarsherlock android-actionbar

我在互联网上搜索了很多。我已经做了我必须做的事情,但我仍然无法按照自己的意愿展示3个虚线菜单。

以下是相关代码:

首先,我的清单min sdk设置为9,我的targetSdk设置为18

菜单xml:

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

 <item
    android:id="@+id/itemMainAlbum"
    android:showAsAction="ifRoom"
    android:title="Set as Main Album">
</item>
<item
    android:id="@+id/itemImport"
    android:showAsAction="ifRoom"
    android:title="Import">
</item>
<item
    android:id="@+id/itemSettings"
    android:showAsAction="ifRoom"
    android:title="Settings">
</item>

活动的相关代码(扩展了SherlockActivity):

@Override
    public boolean onCreateOptionsMenu(Menu menu) {
       MenuInflater inflater = getSupportMenuInflater();
       inflater.inflate(R.menu.gallery_menu, menu);
       return super.onCreateOptionsMenu(menu);
    }
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
       // Handle item selection
       switch (item.getItemId()) {
          case R.id.itemImport:
             startImportActivity();
             return true;
          case R.id.itemMainAlbum:
              setMainAlbum();
             return true;
          case R.id.itemSettings:
                 // do s.th.
              return true;
          default:
             return super.onOptionsItemSelected(item);
       }
    }

以下是我的活动的样子:

enter image description here

仅当我点击设备的菜单按钮时,才会显示底部的菜单项。无论我添加了多少菜单项,都不会显示3个虚线菜单。

2 个答案:

答案 0 :(得分:1)

“3点菜单”将永远不会显示,因为您的设备有一个MENU按钮。 “3点菜单”仅出现在缺少MENU按钮的设备上,以允许此类用户访问溢出。通过设置模拟没有MENU按钮的设备的模拟器,您可以看到“3点菜单”的样子。

您可以在the "Say Goodbye to the MENU Button" Android Developers Blog帖子中了解详情。

答案 1 :(得分:1)

如果您使用ActionBarSherlock,则可以使用this little hack。它对我来说完美无瑕,并在我测试过的每台设备上显示菜单溢出。