gpt4 book ai didi

android - 可折叠 View 不适用于 viewpager

转载 作者:行者123 更新时间:2023-11-29 23:19:59 27 4
gpt4 key购买 nike

我的布局包含顶部的水平 recyclerViewviewPager

ViewPager 在其每个选项卡中都有一个 recyclerView

我想在用户滚动布局时折叠顶部水平回收器 View

这是我的代码,当用户滚动 recyclerview 时它不会折叠水平 View 。

<com.google.android.material.appbar.AppBarLayout
android:id="@+id/collapsing_toolbar_appbarlayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="parent">

<!-- app:contentScrim : The Toolbar color when the
collapsing toolbar is collapsed. -->


<com.google.android.material.appbar.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar_layout"
android:layout_width="match_parent"
android:layout_height="250dp"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:contentScrim="#000000"
app:layout_scrollFlags="scroll|exitUntilCollapsed">


<!-- app:layout_collapseMode : parallax means an animation effect,
pin means fixed. -->


<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rvMatchup"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />

<androidx.appcompat.widget.Toolbar
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin" />


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


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


<!--- BOTTOM ITEMS -->


<com.google.android.material.tabs.TabLayout
android:id="@+id/tabLayout"
android:layout_width="match_parent"
android:layout_height="50dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/collapsing_toolbar_appbarlayout"
app:layout_scrollFlags="scroll|enterAlways|snap"
app:tabGravity="fill"
app:tabMode="fixed" />

<androidx.viewpager.widget.ViewPager
android:id="@+id/viewPager"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="1.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tabLayout"
app:layout_constraintVertical_bias="0.0"

app:layout_behavior="@string/appbar_scrolling_view_behavior"
/>

虽然如果我使用另一个 recyclerView 而不是 ViewPager,它工作正常,并折叠顶 View 。

最佳答案

试试这个会帮助你:

<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/maincontent"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">

<com.google.android.material.appbar.AppBarLayout
android:id="@+id/collapsing_toolbar_appbarlayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="parent">

<!-- app:contentScrim : The Toolbar color when the
collapsing toolbar is collapsed. -->


<com.google.android.material.appbar.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar_layout"
android:layout_width="match_parent"
android:layout_height="250dp"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:contentScrim="#000000"
app:layout_scrollFlags="scroll|exitUntilCollapsed">


<!-- app:layout_collapseMode : parallax means an animation effect,
pin means fixed. -->


<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rvMatchup"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />

<androidx.appcompat.widget.Toolbar
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin" />


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

<com.google.android.material.tabs.TabLayout
android:id="@+id/tabLayout"
android:layout_width="match_parent"
android:layout_height="50dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/collapsing_toolbar_appbarlayout"
app:layout_scrollFlags="scroll|enterAlways|snap"
app:tabGravity="fill"
app:tabMode="fixed" />


<androidx.viewpager.widget.ViewPager
android:id="@+id/viewPager"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="1.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tabLayout"
app:layout_constraintVertical_bias="0.0"

app:layout_behavior="@string/appbar_scrolling_view_behavior"
/>
</android.support.design.widget.CoordinatorLayout>

<!--- BOTTOM ITEMS -->

关于android - 可折叠 View 不适用于 viewpager,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54515812/

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