gpt4 book ai didi

android - 有 2 个可以依次展开/折叠的 CollapsingToolbarLayout

转载 作者:行者123 更新时间:2023-11-29 01:24:15 25 4
gpt4 key购买 nike

有没有办法让 2 个 CollapsingToolbarLayouts(一个在另一个下面)可以一个接一个展开/折叠?

让我们以这张图片为例:

enter image description here

第 1 部分和第 2 部分是两个 CollapsingToolbarLayout(我想每个都包含一个工具栏),第 3 部分是一个可以滚动的列表(一个 RecyclerView)。

用户可以在第 3 部分滚动,它会折叠第 1 部分。一旦第 1 部分完全折叠,它将折叠第 2 部分。一旦 2 个布局折叠,用户可以继续滚动列表。

如果用户向另一个方向滚动,他首先必须到达列表的顶部,然后如果他继续滚动,它将展开第 2 部分,然后在第 2 部分完全展开后展开第 1 部分展开。

最佳答案

也许现在回复还为时不晚,但我找到了可能对其他开发人员有所帮助的解决方案。这是按预期工作的代码:当用户滚动 NestedScrollView 时,顶部的 collapsingContainerFirst 将被折叠,之后,collapsingContainerSecond 将被折叠。享受吧!

<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.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/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".ui.main.MainFragment">

<com.google.android.material.appbar.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fitsSystemWindows="true"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">

<com.google.android.material.appbar.CollapsingToolbarLayout
android:id="@+id/collapsingContainerFirst"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
app:layout_scrollFlags="scroll|snap">

<FrameLayout
android:id="@+id/someContainerWithData"
android:layout_width="match_parent"
android:layout_height="200dp"
android:background="@color/red" />

</com.google.android.material.appbar.CollapsingToolbarLayout>

<com.google.android.material.appbar.CollapsingToolbarLayout
android:id="@+id/collapsingContainerSecond"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_scrollFlags="scroll|snap">

<FrameLayout
android:id="@+id/someContainerWithOtherData"
android:layout_width="match_parent"
android:layout_height="200dp"
android:background="@color/black" />
</com.google.android.material.appbar.CollapsingToolbarLayout>
</com.google.android.material.appbar.AppBarLayout>


<androidx.core.widget.NestedScrollView
android:id="@+id/scrollContainer"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior">

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">

<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="@string/lorem_ipsum"
android:textColor="#000000" />
</LinearLayout>
</androidx.core.widget.NestedScrollView>

</androidx.coordinatorlayout.widget.CoordinatorLayout>

关于android - 有 2 个可以依次展开/折叠的 CollapsingToolbarLayout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34975623/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com