Intereting Posts
Что происходит, когда приложение Android отключено? Фрагмент BackStack не работает, хотя addToBackStack (null) вызывается Лучшие практики разработки более крупных приложений на Android Есть ли существенные накладные расходы при использовании FragmentActivity над обычной Activity в Android? Я получаю сообщение об ошибке ddms Не могу привязываться к локальному 8602 для отладчика – отладка для Android не требуется Загрузка изображения синхронно с Glide Приложение уже развернуто. Нет необходимости переустанавливать Проблема с удалением полилинии google map v2 android Изменить цвет шрифта notifiaction Является ли этот метод быстрее, чем Math.random ()? Android SAX Parsing: как сохранить новые строки с помощью тега CDATA Извлечение данных из ELM327 Безопасные запросы веб-сервисов Существуют ли инструменты для Android, которые помогают создавать контент-провайдеры? Travis CI для Android – Ошибка сборки: не удалось найти цель и не удалось найти зависимости

Как сделать панель контекстного actionmode накладывать мой макет вместо того, чтобы «толкать» его вниз

Я применил свою собственную группу просмотра для своего приложения. Использование панели действий не является вариантом по разным причинам, поэтому в моей группе просмотра у меня есть свои собственные «панели действий» один сверху и один внизу. На рисунке 1 показан мой текущий макет.

Изображение 1

Как видите, в макете есть два edittexts, и все выглядит нормально.

Однако, когда пользователь выбирает какой-либо текст в любом из edittexts, отображается контекстная панель действия. На рисунке 2 показано это.

Изображение 2

Когда это происходит, панель actionmode «толкает» мой весь макет, чтобы получить его пространство. В планшетах и ​​других устройствах с большим экраном это нормально, но в небольших устройствах и особенно с мягкой клавиатурой видно, что оставшаяся высота слишком мала (в альбомной ориентации непригодна).

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

Изображение 3

Это возможно?

Просто добавьте в свой стиль <item name="android:windowActionModeOverlay">true</item> .

Чтобы использовать windowActionModeOverlay с панелью инструментов appcompat, используйте

 <item name="windowActionModeOverlay">true</item> 

К вашему стилю.

Это также можно выполнить программно, используя:

  getWindow().requestFeature(Window.FEATURE_ACTION_MODE_OVERLAY); 

Если вы хотите, чтобы панель действий накладывала содержимое … добавьте этот код в свои стили

 <item name="android:windowActionBarOverlay">true</item>