如何在CollapsingToolbarLayout中折叠时删除透明工具栏填充

时间:2016-09-07 13:57:21

标签: android toolbar android-collapsingtoolbarlayout

我在我的应用中使用了CollapsingToolbarLayout,但是当它折叠时,工具栏中有marginLeft和marginRight,如下图所示。
当我将工具栏背景设置为不透明(例如红色)时,它看起来很正常 那么我应该如何删除保证金呢? wrong toolbar with margin

我希望它在下面,但背景是透明的

我的xml代码是

    <android.support.design.widget.AppBarLayout
    android:id="@+id/appbarLayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/transparent">
    <android.support.design.widget.CollapsingToolbarLayout
        android:id="@+id/toolbarLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:collapsedTitleGravity="center_horizontal"
        app:layout_scrollFlags="scroll|exitUntilCollapsed"
        app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
        app:expandedTitleGravity="center_horizontal"
        app:statusBarScrim="@color/transparent"
        app:contentScrim="@color/transparent"
        app:expandedTitleTextAppearance="@style/CollapsingToolbarLayoutExpandedText"
        app:collapsedTitleTextAppearance="@style/CollapsingToolbarLayoutCollapsedText"
        app:expandedTitleMarginTop="0dp"
        app:expandedTitleMarginBottom="20dp">

        <View
            android:id="@+id/venueImage"
            android:layout_width="match_parent"
            android:layout_height="100dp"
            app:layout_collapseMode="parallax"
            app:layout_collapseParallaxMultiplier="0.7"/>


        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="@color/transparent"
            android:layout_marginTop="@dimen/status_bar_height"
            app:layout_collapseMode="pin"
            app:contentInsetLeft="0dp"
            app:contentInsetRight="0dp"/>

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

2 个答案:

答案 0 :(得分:4)

app:elevation="0dp"添加到AppBarLayout窗口小部件中为我修复此问题。

同样在我的布局中,我AppBarLayout嵌套在CoordinatorLayout内,而你的反面也是如此。

答案 1 :(得分:0)

您也可以在 android:stateListAnimator 中设置 AppBarLayout null;类似的东西

<com.google.android.material.appbar.AppBarLayout
    android:id="@+id/app_bar_layout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:stateListAnimator="@null"> // This works