我创建了一个自定义的LayoutManager
和TouchHelper.Callback
以拥有类似火种的纸牌堆。我希望布局管理器仅允许第一项具有触摸事件。首先,我覆盖isItemViewSwipeEnabled()
的ItemTouchHelper.Callback
以禁用每个孩子的触摸事件。作为最后一步,我需要允许第一项仅具有触摸事件。但是,我没有这样做。有人知道如何克服吗?
用于创建子视图的StackLayoutManager。
StackTouchHelperCallback禁止默认的触摸事件。
StackView一个自定义的RecyclerView。
这是我开发的自定义视图层次结构。如果有人提出了某种意见,他们可以帮助我吗?预先感谢。
如果您不想允许任何移动,则可以override
getMovementFlags
method
和return
0,否则return
方向适当flags
。
override fun getMovementFlags(recyclerView: RecyclerView, viewHolder:RecyclerView.ViewHolder): Int {
return if(viewHolder.adapterPosition == 0) /* return appropriate direction flags */ else 0
}