2

我的应用程序包含一个 DrawerLayout,其中包含 appcompat 工具栏。当抽屉“打开”片段时一切正常,但是当我从片段开始一个活动然后它显示操作模式菜单时,它们显示在工具栏的顶部,但我希望它以与片段工作相同的方式在工具栏上。

此效果出现在 Android 5.0.1 和 KitKat 4.4.2 上

在 SO 上找不到任何解决方案对我有用。

当操作模式菜单可见时,如何修复它并仅在工具栏上显示操作模式?

下图显示了错误的结果 动作模式和工具栏

这是预期的结果 在此处输入图像描述

被调用的活动布局

<?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"/>
4

1 回答 1

3

添加<item name="windowActionModeOverlay">true</item>到样式将解决问题

于 2014-12-25T10:32:59.117 回答