什么是ActionBar菜单项中的orderInCategory以及为什么它被用于..?
我工作的行动菜单项和溢出项目这是我的main_menu.xml
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/menu_search" android:icon="@drawable/search" android:title="@string/start_new_project" app:showAsAction="always" /> <item android:id="@+id/menu_dts_overflow" android:icon="@drawable/ic_action_overflow_round" android:orderInCategory="11111" android:title="Service" app:showAsAction="always"> <menu> <item android:id="@+id/menu_newProject" android:icon="@drawable/newproject" android:title="@string/start_new_project" app:showAsAction="never" /> <item android:id="@+id/menu_help" android:icon="@drawable/help" android:title="Service Tasks" app:showAsAction="never" /> <item android:id="@+id/menu_signOut" android:icon="@drawable/signout" android:title="@string/menusignout" app:showAsAction="never" /> </menu> </item>
我试图构build一个search项目和溢出项目,你可以在上面的代码中看到。 我是新的动作酒吧菜单项,所以我试图谷歌它,并能够使其工作,因为我需要。
在这我必须知道一件事。
1.什么是orderInCategory
与一些数字和它是什么使用..?
android:orderInCategory
属性决定菜单项在菜单中显示的顺序。 菜单项从左到右按orderInCategory
的整数值(即1,2,3 … – >从左到右)的升序排列。
android:orderInCategory
实际上有两种用途。
1.对于ActionBar
菜单项。 在ActionBar中,项目将从左到右出现,具体取决于升序。
2.用于overflow
菜单中的菜单项。 溢出菜单项将根据您指定的升序从上到下显示。
android:orderInCategory
值越高,优先级越低。
我有一个活动和一个片段,他们都有选项菜单,项目号码是1和3。
如果我设置android:orderInCategory=0
,活动菜单在片段菜单上方,在设置值之前效果相同。
但是,如果我设置了android:orderInCategory=1
,活动菜单在片段菜单下面,那就是我想要的(我也testing了android:orderInCategory=5
,效果也一样。)