Создание меню всплывающих опций в контекстной панели действий

У меня есть приложение с темой NoActionBar . В моей основной деятельности у меня есть меню опций, которое я создал вручную в верхней части экрана (или используя кнопку опций встроенного устройства).

В этом основном действии у меня есть фрагмент с listView, в котором я применяю функцию продолжительного нажатия режима действия, чтобы показать контекстную панель действий (CAB) для дальнейших пользовательских параметров.

Теперь я пытаюсь добавить элемент элемента в свой CAB, поэтому он будет содержать некоторые параметры, такие как выбор всех элементов в listView, но поскольку это элемент CAB, я не могу показать всплывающее меню, как в обычной деятельности. Более того, я хочу, чтобы все обратные вызовы меню параметров (например, onOptionsItemSelected) оставались в контексте CAB, чтобы иметь возможность продолжать выполнять действия в CAB.

Вот код моего CAB:

<?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/action_delete" android:orderInCategory="100" app:showAsAction="always" android:icon="@drawable/ic_action_delete" android:title="Delete"/> <item android:id="@+id/action_overflow" app:showAsAction="always" android:orderInCategory="200" android:icon="@drawable/ic_action_overflow" android:title="Options" android:visible="false"/> </menu> 

По-видимому, я пропустил встроенную функцию CAB – встроенное меню переполнения, которое разрушает некоторые элементы действий, когда экран слишком мал, чтобы показать их все.

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

 android:showAsAction="never" app:showAsAction="never" 

Итак, скажем, у нас есть 3 действия (delete, selece_all, add) в CAB, и мы хотим, чтобы два из них (select_all, add) были свернуты всегда в меню встроенного переполнения, мы установим это в xml:

 <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:mm="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/action_delete" android:orderInCategory="100" mm:showAsAction="always" android:icon="@drawable/ic_action_delete" android:title="Delete"/> <item android:id="@+id/action_select" android:orderInCategory="200" android:showAsAction="never" mm:showAsAction="never" android:title="@string/select_all"/> <item android:id="@+id/action_add" android:orderInCategory="300" android:showAsAction="never" mm:showAsAction="never" android:title="@string/button_add"/>