有没有办法让2个CollapsingToolbarLayouts(一个在另一个之下)可以一个接一个地展开/折叠?
让我们以此图片为例:
第1部分和第2部分是两个CollapsingToolbarLayouts(每个都包含一个我想的工具栏),第3部分是一个可以滚动的列表(RecyclerView)。
用户可以滚动第3部分,它将折叠部分1.一旦部分1完全折叠,它将折叠部分2.折叠2个布局后,用户可以继续滚动列表。
如果用户向另一个方向滚动,他首先必须到达列表的顶部,然后如果他继续滚动,它将展开第2部分,然后在第2部分完全展开后展开部分1扩大。
答案 0 :(得分:1)
我希望这就是你要找的东西:app:layout_collapseMode="parallax"
应该做的。:
示例:强>
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#EEEEEE"
android:fitsSystemWindows="true"
tools:context=".MainActivity">
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="250dp"
android:text="New Button" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="250dp"
android:text="New Button" />
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="250dp"
android:text="New Button" />
<Button
android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="250dp"
android:text="New Button" />
</LinearLayout>
</android.support.v4.widget.NestedScrollView>
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/toolbarCollapse"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
app:contentScrim="?attr/colorPrimary"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?actionBarSize"
app:layout_collapseMode="pin" />
<ImageView
android:layout_width="match_parent"
android:layout_height="100dp"
android:minHeight="190dp"
android:src="@mipmap/ic_launcher"
app:layout_collapseMode="parallax" />
<ImageView
android:layout_width="match_parent"
android:layout_height="100dp"
android:layout_marginTop="102dp"
android:minHeight="190dp"
android:scaleType="fitXY"
android:src="@drawable/social"
app:layout_collapseMode="parallax" />
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
</android.support.design.widget.CoordinatorLayout>
另外,您可能需要查看:app:layout_scrollFlags
标志:
http://developer.android.com/reference/android/support/design/widget/AppBarLayout.LayoutParams.html
此外,有两个工具栏不是一个好主意,我认为你正在寻找TabLayout
,类似这样的例子: