如何控制滑动以关闭 RecyclerView 中的单个列表项
How to control swipe to dismiss for individual list item in RecyclerView
我正在使用两个 ItemTouchHelper
对象,一个用于 LEFT 滑动和相应的操作,另一个用于 RIGHT 滑动和相应的操作操作。在我的列表中,很少项目必须只启用左滑动,很少项目必须只启用右滑动。
但问题是,如果我将 RecyclerView
附加到两个 Helper 对象,那么每个对象都可以在两个方向上滑动。
在 ItemTouchListener 中是否有任何方法可以控制滑动以关闭的单个列表项?
P.S. not interested in external libraries
使用ItemTouchHelper.Callback.getMovementFlags(...)
(或者ItemTouchHelper.SimpleCallback.getSwipeDirs(...)
)。它获取 ViewHolder
作为参数。
在 RecyclerView.Adapter.onBindViewHolder(...)
中的 ViewHolder
上设置一个标志,如果表示的项目可以向左或向右滑动或 none。在上述方法中查询该标志和 return 一个相应的值。
我正在使用两个 ItemTouchHelper
对象,一个用于 LEFT 滑动和相应的操作,另一个用于 RIGHT 滑动和相应的操作操作。在我的列表中,很少项目必须只启用左滑动,很少项目必须只启用右滑动。
但问题是,如果我将 RecyclerView
附加到两个 Helper 对象,那么每个对象都可以在两个方向上滑动。
在 ItemTouchListener 中是否有任何方法可以控制滑动以关闭的单个列表项?
P.S. not interested in external libraries
使用ItemTouchHelper.Callback.getMovementFlags(...)
(或者ItemTouchHelper.SimpleCallback.getSwipeDirs(...)
)。它获取 ViewHolder
作为参数。
在 RecyclerView.Adapter.onBindViewHolder(...)
中的 ViewHolder
上设置一个标志,如果表示的项目可以向左或向右滑动或 none。在上述方法中查询该标志和 return 一个相应的值。