我写了个BoardView,看一下吧。

2,827 阅读1分钟

简介

我撸了个BoardView,恩,没错,应用场景是什么呢,主要是协同办公软件的看板视图。像这样

功能

对于移动端的协同办公来说,有哪些功能,我们可能需要呢?

  • 同一列中的拖拽排序
  • 列拖拽排序
  • 同一个任务在不同列之间的拖拽排序
  • 放大缩小
  • 其他

看一下gif,图比较大,耐心等待。

实现原理

那么,实现原理是什么呢?我们知道用RecyclerView很容易可以实现拖拽,通过观察ItemTouchHelper的代码,发现,这一些效果 都是Item动画的关系。因为 我们可以参考。

  • 最外层的拖拽,直接用ItemTouchHelper,但是我们需要改一下,让我们的落点在title的位置才响应longclick
  • 内层的拖拽,就根据落点的位置,对Adapter进行插入 删除 移动的操作

代码

代码在这里 BoardView .

虽然还有些许的bug,喜欢的给个star吧。