Что такое orderInCategory в пункте меню ActionBar и почему он используется для...?
Im работает над элементом меню действий и над его элементом потока, это мой 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>
Я попытался создать элемент поиска и элемент переполнения, который вы можете увидеть в приведенном выше коде. Я новичок в пунктах меню Action bar, поэтому я попытался выполнить его в Google и смог заставить его работать так, как мне нужно.
В этом я должен знать еще одно.
1. Что такое orderInCategory
с некоторыми числами и для чего оно используется..?
Ответы
Ответ 1
Атрибут android:orderInCategory
определяет порядок, в котором элементы меню будут отображаться в меню при его отображении. Элементы меню расположены слева направо в порядке возрастания целых значений orderInCategory
(т.е. 1,2,3... → слева направо).
Ответ 2
android:orderInCategory
действительно полезен двумя способами.
1. Для пунктов меню в ActionBar
. Элементы будут отображаться слева направо в ActionBar в зависимости от возрастания.
2. Для пунктов меню в overflow
. Элементы меню переполнения будут отображаться сверху вниз в зависимости от указанного вами возрастания.
Ответ 3
android:orderInCategory
Более высокое значение, более низкий приоритет.
У меня есть Activity и Fragment, оба имеют опционное меню, а номера позиций - 1 и 3.
Если я устанавливаю android:orderInCategory=0
, меню действий находится над меню фрагмента, тот же эффект до того, как я установил значение.
Но если я устанавливаю android:orderInCategory=1
, меню действий находится ниже меню фрагмента, и это то, что я хочу. (Я также тестировал android:orderInCategory=5
, тоже тот же эффект.)