Как заставить всплывающее меню переполнения избежать препятствия панели действий?

Задний план

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

Введите описание изображения здесь

Здесь элементы, которые были скрыты, – это удаление и совместное использование.

Проблема

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

Не только это, но, похоже, это преднамеренное поведение , но во многих приложениях Google, которые были обновлены до материального дизайна, это поведение не выполняется, как я сообщил здесь .

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

Я попытался создать это в теме, которую я использую. На самом деле моя тема очень отличается, а ее родительский элемент – «Theme.AppCompat.Light.NoActionBar» (и я использую панель инструментов как actionBar), но этот фрагмент тоже имеет эту проблему, поэтому я думаю, что если кто-то будет решен, другой будет слишком.

Во всяком случае, вот фрагмент:

<resources xmlns:tools="http://schemas.android.com/tools"> <style name="AppBaseTheme" parent="Theme.AppCompat.Light"></style> <style name="AppTheme" parent="AppBaseTheme"> <item name="android:actionOverflowMenuStyle" tools:targetApi="21">@style/OverflowMenu</item> </style> <style name="OverflowMenu" parent="@android:style/Widget.Material.PopupMenu.Overflow" tools:targetApi="21"> <item name="android:overlapAnchor">false</item> <item name="android:dropDownVerticalOffset">50dip</item> </style> </resources> 

Оба атрибута ничего не изменили.

Я также пытался найти, как он работает в библиотеке поддержки, но не смог найти его.

Вопрос

Как создать всплывающее меню элемента действия переполнения, чтобы избежать скрытия другого элемента?

Если вы используете ActionBarActivity, вам необходимо переопределить версию appflow для стиля переполнения вместе с версиями popup-атрибутов appcompat, где это применимо.

 <resources> <style name="AppBaseTheme" parent="Theme.AppCompat.Light" /> <style name="AppTheme" parent="AppBaseTheme"> <item name="actionOverflowMenuStyle">@style/OverflowMenu</item> </style> <style name="OverflowMenu" parent="Widget.AppCompat.PopupMenu.Overflow"> <!-- Required for pre-Lollipop. --> <item name="overlapAnchor">false</item> <!-- Required for Lollipop. --> <item name="android:overlapAnchor">false</item> </style> </resources> 
Intereting Posts
Установить аудио атрибуты в классе SoundPool.Builder для API 21 Предотвращение пикселизации изображений, отступы listViews и добавление закругленных углов Синхронная и асинхронная деятельность Список горизонтальных прокрутки Android OnRecivedError не показывает страницу пользовательских ошибок Сохранить base64 строку как изображение с помощью phonegap? Appcelerator Hyperloop Android – Как использовать определенные функции диспетчера датчиков, которые используют проход по эталонной структуре Использование getRotationMatrix и getOrientation в Android 2.1 Напишите дополнительный класс Parcelable для другого участка Как вы создаете Android View Pager с индикатором точек? Обновите изображения на FragmentStatePagerAdapter при возобновлении активности Можно ли перетащить элемент за пределы RecyclerView? Играть в Midi notes (not files) в android Firebase добавляет слушателей в адаптеры в Android Почему поведение drawableStart не соответствует документации Android?