我想要实现的目标:我想在一个可滚动的布局(Recyclerview
其中包含GridlayoutManager
)中包含一个图块(视图)的视图。将项目拖放到的内部RecyclerView
应会调整图标的位置并与其他元素交换。开始拖动后,上方的图标RecyclerView
将变为垃圾桶图标,将视图拖动到该图标会将其从中删除RecyclerView
。
我尝试了这个出色的教程,但是Recyclerview
由于ItemTouchHelper.Callback
只使用Recycler.ViewHolder
元素作为可能的目标,因此没有找到一种方法来处理向外部的拖动。
interpolateOutOfBoundsScroll()
如果视图移出边界,则该方法会提供反馈,但只会返回屏幕外的总大小,而不会给出坐标。此外,尝试将视图拖出Recyclerview
总是位置会导致视图通过的边界时被切割Recyclerview
。
有谁知道我如何实现这种效果?
你被边界所RecyclerView
束缚。您有几种选择:
将RecyclerView
的版式高度设置为match_parent
并位于上方视图的顶部(是否为Toolbar
?),并添加相同大小的粘性标头,并使用空白的透明版式。这样,您可以将其拖动并看到漂浮在该处的项目。
与其将某个项目拖到离合法右上角项目太近的垃圾桶图标上,不如长按一下以选择该项目(并施加诸如复选标记或红色掩码之类的信号)并制作垃圾桶出现并删除uppon单击(并可能允许多项删除)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句