我已经实现了ItemTouchHelper,就像在这篇文章中描述的那样: https://medium.com/@ipaulpro/drag-and-swipe-with-recyclerview-b9456d2b1aaf#.k7xm7amxi
如果RecyclerView是CoordinatorLayout的孩子,那么一切正常。
但是如果RecyclerView是CoordinatorLayout中的NestedScrollView的子代,则拖动滚动不再起作用。 拖动项目并将其移动到屏幕的顶部或底部,RecyclerView不会像它不是NestedScrollView的子项那样滚动。
有什么想法吗?
答案 0 :(得分:1)
android:descendantFocusability =“ blocksDescendants”
添加 NestedScrollView 并添加
android:focusableInTouchMode =“ true”
在子布局中,其外观如下
<androidx.core.widget.NestedScrollView
android:descendantFocusability="blocksDescendants">
<androidx.constraintlayout.widget.ConstraintLayout
android:focusableInTouchMode="true">
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.core.widget.NestedScrollView>
答案 1 :(得分:0)
您必须为nestedScrolling
禁用recyclerView
:
recyclerViewAdapter.setIsNestedScrollingEnabled(false);