我需要对我的应用程序执行排序操作,并保持选中的项目处于选中状态。但是,当我为其使用组时,我的主MenuItem开始忽略属性showAsAction =“ always”。
遵循所使用的布局。我正在使用21.0.2版的API 19和AppCompat:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" >
<item
android:icon="@drawable/ic_content_sort"
android:title="@string/menu_sort"
app:showAsAction="always">
<group android:checkableBehavior="single" >
<item
android:id="@+id/action_sort_by_date"
android:title="@string/menu_sort_by_date" />
<item
android:id="@+id/action_sort_by_description"
android:title="@string/menu_sort_by_description" />
</group>
</item>
</menu>
最佳答案
我找到了一个与此相关但不相等的问题的解决方案:Having two single-selection groups in ActionBar doesn't work, but attaching a pop up menu instead doesn't work either。
这样,我只需要在新标签菜单中加入“组”标签即可:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" >
<item
android:icon="@drawable/ic_content_sort"
android:title="@string/menu_sort"
app:showAsAction="always">
<menu> <!-- SOLUTION -->
<group android:checkableBehavior="single" >
<item
android:id="@+id/action_sort_by_date"
android:title="@string/menu_sort_by_date" />
<item
android:id="@+id/action_sort_by_description"
android:title="@string/menu_sort_by_description" />
</group>
</menu>
</item>
</menu>