当前位置:   article > 正文

仿任务面板 跨多个RecyclerView的Item拖动 支持缩小后拖动_仿任务面板 跨recyclerview的item拖动 支持缩小后拖动

仿任务面板 跨recyclerview的item拖动 支持缩小后拖动


640?wx_fmt=other 点击关注了解更多精彩内容!!


640?wx_fmt=png

魏子翔,2017年加入去哪儿网技术团队,目前在平台事业部/大前端技术中心,主要负责Android平台的基础框架和跨端混合应用方向研发。关注前沿技术,热爱分享,拥抱开源。


相信看完优雅的实现多类型 RecyclerView Adapter 这篇文章后,大家对本库基本用法已经有了初步认识,本文主要讲解跨 RecyclerView 的 Item 拖动,并支持缩放的功能,主要是防办公软件的面板,本功能的实现大量参考了系统的 ItemTouchHelper 的源码。 Github地址:MultiItem。

效果截图

640?wx_fmt=gif

640?wx_fmt=gif

用法

拖动功能

拖动功能使用比较简单,拖动功能相关流程和控制都会回调到 ItemDragListener 监听中。 实例化拖动辅助类,设置监听,并在DispatchTouchEvent 中调用 DragHelper. onTouch(ev) 方法。

 
 
  1. @Override

  2. protected void onCreate(Bundle savedInstanceState) {

  3.    ...

  4.    //ItemDragHelper,需要传入外层的横向滚动的RecyclerView

  5.    dragHelper = new ItemDragHelper(horizontalRecycler);

  6.    //为dragHelper设置拖动监听,基本都有默认实现,可根据具体业务继承重写方法

  7.    dragHelper.setOnItemDragListener(new OnBaseDragListener());

  8. }

  9. @Override

  10. public boolean dispatchTouchEvent(MotionEvent ev) {

  11.    //需要保证在Activity或者外层的ViewGroup中重写此方法

  12.    //调用dragHelper.onTouch():true消耗掉事件;false则执行super

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/286812?site
推荐阅读
相关标签
  

闽ICP备14008679号