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>
此更改後,菜單運作良好,並選擇當我按下物理菜單按鈕時顯示。
所以我的問題是:爲什麼子菜單阻止我的最後一個菜單出現在第一個案例?
謝謝!