我的应用中有一个带有3个项目的操作栏.
由于空间问题,只能显示2个,所以我希望第一个显示,其余的显示在溢出中.但实际上只显示前两项,并且没有可检测到的溢出.
以下是相关代码:list_menu.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@+id/menu_insert"
android:icon="@android:drawable/ic_menu_add"
android:title="@string/menu_insert"
android:showAsAction="ifRoom|withText"/>
<item android:id="@+id/menu_call"
android:icon="@android:drawable/ic_menu_call"
android:title="@string/menu_call"
android:showAsAction="ifRoom|withText"/>
<item android:id="@+id/menu_agenda"
android:icon="@android:drawable/ic_menu_agenda"
android:title="@string/menu_agenda"
android:showAsAction="ifRoom|withText"/>
</menu>
Run Code Online (Sandbox Code Playgroud)
Activity.java
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater mi = getMenuInflater();
mi.inflate(R.menu.list_menu, menu);
return true;
}
Run Code Online (Sandbox Code Playgroud) 我想在ActionBar中另外创建一个自定义溢出菜单项,如下图所示:

但是如果ActionBar中的空间很少,我不希望Item1和Item2作为溢出进入设置项,而是进入"我的溢出项".
这是我的菜单xml代码:
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:icon="@android:drawable/ic_menu_agenda"
android:title="Item1"
android:showAsAction="ifRoom|withText" />
<item
android:icon="@android:drawable/ic_menu_add"
android:title="Item2"
android:showAsAction="ifRoom|withText" />
<item android:id="@+id/pick_action_provider"
android:icon="@android:drawable/ic_menu_sort_by_size"
android:showAsAction="always"
android:title="Overflow" >
<menu>
<item android:id="@+id/action_sort_size"
android:icon="@android:drawable/ic_menu_camera"
android:title="Item3" />
<item android:id="@+id/action_sort_alpha"
android:icon="@android:drawable/ic_menu_sort_alphabetically"
android:title="Item4" />
</menu>
</item>
<item
android:id="@+id/action_settings"
android:orderInCategory="100"
android:showAsAction="never"
android:title="@string/action_settings"/></menu>
Run Code Online (Sandbox Code Playgroud)