1
我在设置ListActivity的ActionBar上有一个奇怪的问题。子菜单未显示后的可选菜单项
下面是我用它来建立我的菜单中的XML:
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/menu_search"
android:title="@string/search_filter"
android:icon="@drawable/ic_search"
android:showAsAction="always|withText" />
<item
android:id="@+id/menu_start_date"
android:title="@string/date_filter"
android:showAsAction="always|withText" />
<item
android:id="@+id/menu_end_date"
android:title="@string/date_filter"
android:showAsAction="always|withText" />
<item
android:id="@+id/menu_filters"
android:title="@string/filters"
android:icon="@drawable/ic_filter"
android:showAsAction="always|withText">
<menu>
<item
android:id="@+id/menu_ratings"
android:title="@string/ratings"
android:icon="@drawable/ic_star"
android:showAsAction="always|withText" />
<item
android:id="@+id/menu_emotions"
android:title="@string/emotions"
android:icon="@drawable/ic_smi2"
android:showAsAction="always|withText" />
<item
android:id="@+id/menu_categories"
android:title="@string/categories"
android:icon="@drawable/ic_folder"
android:showAsAction="always|withText" />
</menu>
<item
android:id="@+id/menu_search_order"
android:title="@string/search_order"
android:icon="@drawable/ic_search_order"
android:showAsAction="ifRoom|withText" />
</item>
</menu>
菜单项menu_search
,menu_start_date
,menu_end_date
和子菜单menu_filters
运作良好,但无法从物理菜单拿到菜单menu_search_order
按钮(当我按下按钮时没有任何反应)。
所以我做了一个小测试,看看问题是否不从子菜单来了,我改变了代码和注释子菜单部分:
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/menu_search"
android:title="@string/search_filter"
android:icon="@drawable/ic_search"
android:showAsAction="always|withText" />
<item
android:id="@+id/menu_start_date"
android:title="@string/date_filter"
android:showAsAction="always|withText" />
<item
android:id="@+id/menu_end_date"
android:title="@string/date_filter"
android:showAsAction="always|withText" />
<item
android:id="@+id/menu_filters"
android:title="@string/filters"
android:icon="@drawable/ic_filter"
android:showAsAction="always|withText">
<!-- <menu>
<item
android:id="@+id/menu_ratings"
android:title="@string/ratings"
android:icon="@drawable/ic_star"
android:showAsAction="always|withText" />
<item
android:id="@+id/menu_emotions"
android:title="@string/emotions"
android:icon="@drawable/ic_smi2"
android:showAsAction="always|withText" />
<item
android:id="@+id/menu_categories"
android:title="@string/categories"
android:icon="@drawable/ic_folder"
android:showAsAction="always|withText" />
</menu> -->
<item
android:id="@+id/menu_search_order"
android:title="@string/search_order"
android:icon="@drawable/ic_search_order"
android:showAsAction="ifRoom|withText" />
</item>
</menu>
此更改后,菜单运作良好,并选择当我按下物理菜单按钮时显示。
所以我的问题是:为什么子菜单阻止我的最后一个菜单出现在第一个案例?
谢谢!