上下文操作栏 (CAB) 不覆盖工具栏

我真的坚持这个。


我想在片段中使用 CAB,所以我正在使用


actionMode = ((MainActivity)getActivity()).startActionMode(actionModeCallbacks);

打电话 startActionMode


我一直在更改主题并将几行代码(一起和分开)添加和测试到 xml 样式,例如:


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

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

<item name="android:windowActionBar">false</item>

<item name="windowActionBar">false</item>

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

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

相关信息:

  • <include/>在我的主要活动中和里面定义了我的工具栏。

  • 工具栏包含在 MainActivity 框架之前,该框架和 DrawerLayout 之间,因此我可以在片段中使用工具栏。

  • 我已经在 Main Activity 中测试了 CAB,但它也位于工具栏上方。

  • 我还尝试了一个肮脏的解决方法,在创建/销毁 CAB 时切换工具栏的可见性,但它也不起作用!

  • 我正在使用android.view.ActionMode而不是android.support.v7.view.ActionMode因为如果我使用支持库 (?) , 我将无法调用 startActionMode。

我的工具栏 (*android.support.v7.widget.Toolbar):

        toolbar = findViewById(R.id.toolbar);


        mDrawerLayout = findViewById(R.id.drawer_layout);


        toolbar.setTitle(R.string.addWordLabel_Act);

        setSupportActionBar(toolbar);

        toolbar.setNavigationIcon(R.drawable.ic_menu_white_24dp);

XML(工具栏)


<?xml version="1.0" encoding="utf-8"?>

<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    xmlns:app="http://schemas.android.com/apk/res-auto">


    <android.support.v7.widget.Toolbar

        android:id="@+id/toolbar"

        android:layout_width="match_parent"

        android:layout_height="?attr/actionBarSize"

        android:background="#FAFAFA"

        android:theme="@style/AppTheme.NoActionBar"

        app:collapseIcon="@drawable/ic_arrow_back_white_24dp"

        app:contentInsetStartWithNavigation="0dp"

        app:popupTheme="@style/ThemeOverlay.AppCompat.Light"

        app:title="@string/addWordLabel_Act"

        app:titleTextColor="@color/colorAccent"

        />


桃花长相依
浏览 95回答 1
1回答

白板的微信

我完全忘记检查清单,这就是问题所在!AppTheme 设置为“Theme.AppCompat.Light.NoActionBar”而不是“AppTheme”。因此,我在 AppTheme 中所做的任何更改都不会对应用程序生效。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java