What is orderInCategory in ActionBar menu item & why it is use for..?
Im working on action menu item and its over flow item this is my 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>
I tried to construct a search item and a overflow item which you can see in the above code. I'm new to Action bar menu items so i tried to Google it and was able to make it work as I need.
In this I have to know one more thing.
1. What is orderInCategory
with some numbers and what for it is used..?
android:orderInCategory
is an integer attribute that dictates the order in which the menu items will appear within the menu when it is displayed.
<menu
xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/menu_item_first"
android:orderInCategory="1"
android:showAsAction="never"
android:title="@string/string_one"/>
<item
android:id="@+id/menu_item_second"
android:orderInCategory="2"
android:showAsAction="never"
android:title="@string/string_two"/>
</menu>
-
Menu items in
ToolBar
are arranged fromleft
toright
(orstart
toend
in RTL mode) in the ascending order (i.e. 1,2,3->
left to right). -
Menu Items in
Overflow menu
are arranged fromtop
tobottom
in the ascending order (i.e. 1,2,3->
top to bottom).
android:orderInCategory
is actually useful in two ways.
1. For menu items in ActionBar
.
Items will appear from left to right in ActionBar depending on the ascending order.
2. For menu items in overflow
menu.
Overflow menu items will be displayed from top to bottom depending upon the ascending order you have specified.