问题描述
我有一个ViewPager
,其中包含一个RecyclerView
,它可以垂直滚动并显示带有适配器的项目。每个项目都有一个nestedScrollView
,它也应该垂直滚动。问题是,当我尝试滚动nestedScrollView
时,它会滚动父ViewPager
。
我该如何解决这个问题?
这是RecyclerView:
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/offersRecyclerView"
android:layout_width="0dp"
android:layout_height="0dp"
android:background="@drawable/table_cell_background"
android:fadeScrollbars="false"
android:scrollbars="vertical"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
这是项目的布局,其中包含nestedScrollView:
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/statusConstraintLayout"
android:layout_width="0dp"
android:layout_height="match_parent"
android:background="@drawable/table_background"
android:padding="@dimen/spacing_small"
app:layout_constraintStart_toEndOf="@+id/salaryConstraintLayout"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintWidth_percent="0.55">
<androidx.core.widget.nestedScrollView
android:layout_width="0dp"
android:layout_height="0dp"
android:orientation="vertical"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/statusValue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/offer_sent_with_three_dots"
android:textSize="@dimen/mini_text"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</LinearLayout>
</androidx.core.widget.nestedScrollView>
</androidx.constraintlayout.widget.ConstraintLayout>
解决方法
您也可以在RecyclerView中尝试此操作
android:nestedScrollingEnabled="true"
,
通过尝试将此属性app:layout_behavior="@string/appbar_scrolling_view_behavior"
添加到nestedScrollView