【发布时间】:2017-12-20 17:17:18
【问题描述】:
我正在学习 Udacity Material Design for Android 课程。
在“制作可滚动动态表面”课程中,我学习了如何制作一个随着滚动而改变大小的操作栏。
但此示例适用于内容的 ScrollView。 当我尝试使用 RecyclerView 时,我失去了操作栏和内容之间的阴影效果。
我应该设置一些不同的东西吗? 谢谢。
带有 ScrollView 和 Recycler View 的 XML 代码(已注释):
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:id="@+id/app_bar_layout"
android:layout_width="match_parent"
android:layout_height="192dp"
android:background="?colorPrimary">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:collapsedTitleTextAppearance="@style/TextAppearance.AppCompat.Widget.ActionBar.Title.Inverse"
app:expandedTitleTextAppearance="@style/TextAppearance.AppCompat.Widget.ActionBar.Title.Inverse"
app:expandedTitleMarginStart="72dp"
app:contentScrim="?attr/colorPrimary"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_collapseMode="parallax"
android:scaleType="centerCrop"
android:src="@drawable/glasses_dogs" />
<android.support.v7.widget.Toolbar
android:id="@+id/app_bar"
android:layout_width="match_parent"
android:layout_height="?actionBarSize"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:navigationIcon="@drawable/ic_arrow_back_black_24dp"
app:contentInsetStart="72dp"
app:layout_collapseMode="pin" />
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<!--<android.support.v7.widget.RecyclerView-->
<!--android:id="@+id/main_home_list"-->
<!--android:layout_width="match_parent"-->
<!--android:layout_height="match_parent"-->
<!--android:nestedScrollingEnabled="true"-->
<!--app:layout_behavior="@string/appbar_scrolling_view_behavior" />-->
<ScrollView
android:layout_width="match_parent"
android:nestedScrollingEnabled="true"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
android:layout_height="wrap_content">
<TextView
android:layout_marginTop="16dp"
android:textAppearance="@style/Base.TextAppearance.AppCompat.Body1"
android:text="@string/cupcake_ipsum"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp" />
</ScrollView>
</android.support.design.widget.CoordinatorLayout >
【问题讨论】:
-
你的组件有背景色吗?如果组件具有背景颜色,我认为
elevation可以工作。 -
@WilliamBertan 他们有,甚至是一个有两种布局(标题+内容)的适配器。如果我记得很清楚,应该有背景的是提升的,以防万一
-
你能把你的布局xml添加到问题中吗?
-
@WilliamBertan 我刚刚添加。谢谢您的帮助。如果您需要这个问题(未回答:'()我有用于回收站视图的布局适配器的代码stackoverflow.com/questions/47732585/…
-
你的
elevation标签在哪里?
标签: android android-recyclerview material-design