Подтвердить что ты не робот

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

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

Image 1

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

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

Image 2

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

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

Image 3

Возможно ли это?

4b9b3361

Ответ 1

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

Ответ 2

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

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

в ваш стиль.

Ответ 3

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

 getWindow().requestFeature(Window.FEATURE_ACTION_MODE_OVERLAY);

Ответ 4

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

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