Панель инструментов AppCompat остается видимой, когда включен режим ActionMode.

Мое приложение содержит DrawerLayout, и внутри него я включаю панель инструментов appcompat. Все работает нормально, когда ящик «открывает» фрагменты, но когда из фрагмента я запускаю действие, а затем он показывает меню режима действия, они отображаются в верхней части панели инструментов, но я хочу, чтобы это было над панелью инструментов таким же образом, как работают фрагменты.

Этот эффект присутствует на Android 5.0.1 и KitKat 4.4.2.

Никакое решение, найденное на SO, не сработало для меня.

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

На изображении ниже показан неверный результат ActionMode and Toolbar

Это ожидаемый результат введите здесь описание изображения

Макет вызываемой активности

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
    <include layout="@layout/toolbar_app"/>
    <FrameLayout
        android:id="@+id/content_frame"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>
</LinearLayout>

Макет панели инструментов

<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
                                   xmlns:app="http://schemas.android.com/apk/res-auto"
                                   android:id="@+id/my_toolbar"
                                   android:layout_height="wrap_content"
                                   android:layout_width="match_parent"
                                   android:minHeight="?attr/actionBarSize"
                                   app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
                                   app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
                                   android:background="?attr/colorPrimary"/>



Ответы (1)


Добавление <item name="windowActionModeOverlay">true</item> к стилю решит проблему

person Alexander Zhak    schedule 25.12.2014
comment
Это уже присутствует в определении темы и действительно работает для фрагмента, моя проблема связана с действием, начатым из фрагмента. - person dafi; 25.12.2014
comment
@dafi Я столкнулся с той же проблемой. У меня есть windowAcitonModeOverlay, упомянутый в стиле. Можете ли вы сообщить мне, как вы решили проблему? - person Minions; 29.04.2017