Как создать элемент действия с подпунктами программно? - PullRequest
0 голосов
/ 24 февраля 2020

Фон

Просто хочу посмотреть, как сделать элементы действия в коде без XML

Проблема

Я пришел к тому, что мне не удалось Посмотрите, как я могу создать в коде.

В приведенном ниже примере показан обычный элемент действия со значком, а при нажатии он показывает подменю элементов для выбора. Я хочу создать то же самое, но программно:

<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto">
  <item android:icon="@android:drawable/ic_menu_info_details" android:title="More info" app:showAsAction="always">
    <menu>
      <group android:checkableBehavior="none" android:menuCategory="container">
        <item android:id="@+id/..." android:title="item 1"/>
        <item android:id="@+id/..." android:title="item 2"/>
        <item android:id="@+id/..." android:title="item 3"/>
      </group>
    </menu>
  </item>
</menu>

При использовании этого получается:

enter image description here

И после нажав:

enter image description here

Что я пробовал

Я пробовал 2 решения:

  1. Создайте подменю (используя addSubMenu ), а затем установите для него свойства элемента действия.

  2. Создайте обычный элемент действия ( используя add ) и затем добавляя к нему подпункты.

Результат для них обоих не удался по сравнению с тем, что

Вопрос

Как программно сделать одно и то же, без использования ресурса XML.

...