我想做NestedScrollView
透明,但是当我使用 app:layout_behavior="@string/appbar_scrolling_view_behavior"
时然后它添加白色背景。当我删除 layout_behavior
,我的设计坏了,但它显示为透明背景并显示NestedScrollView
在 View 的顶部。
<android.support.design.widget.CoordinatorLayout
android:id="@+id/coordinatorRootLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="?attr/actionBarSize"
android:background="@android:color/transparent">
<android.support.design.widget.AppBarLayout
android:id="@+id/android_appbar_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsingToolbarLayoutAndroidExample"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:contentScrim="@android:color/transparent"
app:layout_scrollFlags="scroll|exitUntilCollapsed"
app:statusBarScrim="@android:color/transparent">
<ImageView
android:id="@+id/parallax_header_imageview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:adjustViewBounds="true"
android:src="@drawable/greeting_card3"
app:layout_collapseMode="parallax"
app:layout_collapseParallaxMultiplier="0.7" />
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v4.widget.NestedScrollView
android:id="@+id/nested_scroll_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/android_appbar_layout"
android:layout_gravity="fill_vertical"
android:fillViewport="true"
android:scrollbars="none"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<GridView
android:id="@+id/gridview_parallax_header"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center"
android:horizontalSpacing="16dp"
android:numColumns="2"
android:padding="16dp"
android:scrollbars="vertical"
android:verticalSpacing="16dp" />
</android.support.v4.widget.NestedScrollView>
</android.support.design.widget.CoordinatorLayout>
最佳答案
当我意识到这个问题时,我正在努力解决同样的问题。
如果将透明背景设置为 NestedScrollView
它将是透明的。您将看到 Activity/fragment 背景颜色,但您不会看到来自 AppBarLayout
的图像背景.这不是错误,问题是您的AppBarLayout
正在崩溃,尽管您将视差乘数设置为 1,但 View 崩溃和 NestedScrollView
填满整个屏幕。
所以,你可以做什么?这很简单!您只需将图像设置在外面并让 AppBarLayout
作为占位符,在图像未折叠时查看图像。
这在使用 app:layout_collapseParallaxMultiplier="1.0"
时效果很好因为将图像设置在 AppBarLayout
之外意味着失去图像的视差效果。
关于android - 添加layout_behavior时如何使NestedScrollView透明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49095386/