在透明工具栏中消除奇怪的灰色梯形

时间:2016-10-24 21:45:12

标签: android android-toolbar

我无法找到覆盖透明工具栏的某种面具的来源:

enter image description here

有人知道如何删除它吗?

在进行横向更改时,它会变得更加难看。

一些代码:

<android.support.design.widget.AppBarLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="#00000000"    <-- makes no difference
    android:theme="@style/AppTheme.AppBarOverlay.Transparent">

    <include layout="@layout/toolbar_transparent"/>

</android.support.design.widget.AppBarLayout>

toolbar_transparent:

<?xml version="1.0" encoding="utf-8"?>
<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_width="match_parent"
    android:layout_height="@dimen/abc_action_bar_default_height_material"
    android:elevation="4dp"
    style="?attr/actionBarStyle"
    android:background="#204CAF50"
    android:theme="@style/AppTheme.NoActionBar.ColoredToolbar"
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>

themes.xml(我承认这是一团糟 - 很像尝试和错误)

<style name="AppThemeBase" parent="Theme.AppCompat">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
    <item name="android:activatedBackgroundIndicator">@drawable/activated_background</item>
</style>

<style name="AppTheme" parent="AppThemeBase"/>

<style name="AppTheme.NoActionBar">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="actionBarStyle">@style/AppTheme.ActionBar</item>
    <item name="android:activatedBackgroundIndicator">@drawable/activated_background</item>
</style>

<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />

<style name="AppTheme.AppBarOverlay.Transparent" parent="ThemeOverlay.AppCompat.ActionBar" >
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorPrimary">#00000000</item>
</style>

<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />

<style name="AppTheme.ActionBar" parent="AppTheme.NoActionBar">
    <item name="windowActionBar">true</item>
    <item name="windowNoTitle">false</item>
</style>

<style name="AppTheme.NoActionBar.ColoredToolbar" parent="AppTheme.NoActionBar">
    <item name="android:textColorSecondary">@color/colorPrimaryDark</item>
</style>

2 个答案:

答案 0 :(得分:1)

这来自android.support.design.widget.AppBarLayout包装器。

当我将其移除并离开工具栏时,梯形消失了。

<!--<android.support.design.widget.AppBarLayout-->
    <!--android:layout_width="match_parent"-->
    <!--android:layout_height="wrap_content"-->
    <!--android:theme="@style/AppTheme.AppBarOverlay.Transparent">-->

    <include layout="@layout/toolbar_transparent"/>

<!--</android.support.design.widget.AppBarLayout>-->

至少适用于棒棒糖和棉花糖。 Kitkat及以下尚未测试。

BTW我正在使用com.android.support:design:24.2.1

答案 1 :(得分:0)

这对我有用:

<android.support.design.widget.AppBarLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:theme="@style/AppTheme.AppBarOverlay.Transparent">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="@android:color/transparent"
        app:theme="@style/AppTheme.AppBarOverlay.Transparent"
        app:popupTheme="@style/AppTheme.PopupOverlay" />

</android.support.design.widget.AppBarLayout>

in styles

<style name="AppTheme.AppBarOverlay.Transparent" parent="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
    <item name="android:windowActionBarOverlay">true</item>
    <item name="windowActionBarOverlay">true</item>
</style>