Как предотвратить исчезновение меню при нажатии на элемент в Android? - PullRequest
1 голос
/ 19 июня 2019

У меня есть меню, в котором все пункты имеют флажок. Так что это как меню с несколькими выборами. Я не хочу, чтобы меню закрывалось при нажатии на элемент. Я только хочу закрыть меню на спине нажмите. Но я не могу понять, как это сделать?

Это код:

override fun onOptionsItemSelected(item: MenuItem): Boolean {
    when(item.itemId) {
        R.id.my_item -> {
            // toggle    
        }
    }

    // something to do here?
    // changing return value to true or false doesn't help
    return false
}

Ответы [ 2 ]

0 голосов
/ 19 июня 2019

Вам придется обернуть свой menu items тег group. См. Код ниже:

<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <group android:checkableBehavior="all">
        <item android:id="@+id/item1"
              android:titleCondensed="Options"
              android:title="Title 1"
              android:icon="@android:drawable/ic_menu_preferences">
        </item>
        <item android:id="@+id/item2"
              android:titleCondensed="Persist"
              android:title="Title 2"
              android:icon="@android:drawable/ic_menu_preferences"
              android:checkable="true">
        </item>
    </group>
</menu>

Перейдите по ссылке, чтобы узнать больше о checkable menu items

0 голосов
/ 19 июня 2019

Эта реализация скрыта под собственным управлением меню Android, и вы получаете только обратный вызов выбранного пункта меню.Было бы лучше переместить все выбранные элементы в AlertDialog (. Есть простой пример: я только что гуглил и у меня есть только один элемент меню, который начинает показывать, что AlertDialog

...