仿 Hola桌面 Launcher 定制 滑动文件夹 之 拖动分析

本文探讨了Launcher中拖动操作的原理,重点分析了DragSource、DropTarget和DragController.DragListener的角色。为了实现Viewpage内的文件夹拖动、排序和删除功能,需要实现多个接口并处理滑动冲突。详细介绍了文件夹内部结构,包括ScrollView、CellLayout和滑动工具的使用,以及在DragLayer中的整合。实现这一功能需要深入理解嵌套布局和Launcher工作原理,作者花费了2-3周时间来完成。
摘要由CSDN通过智能技术生成

好久没写博客。还是习惯写思路。思路最重要。

Launcher的拖动无非就是一个DragController说简单也简单,说复杂有时候也挺复杂的,以下简单的说下自己的理解。说得有错的地方大家可以指出来。

DragSource  拖动源头,顾名思义,就是从哪里拖进来的。比如从 workspace --->folder, 从foler --->workspace  ,从 folder--> deleteTagter 等 。就是从哪里到哪里,前面那个哪里,就是DragSource。

DropTarget  同理,拖动的目的。  

  DragController.DragListener   拖动的监听。哪里用到他呢。 比如拖动删除。他就要实现这个 监听,当长按的时候,就让屏幕最顶部出现 删除的XX。或者获取焦点等。


比如我们现在要实现一个,Viewpage带 文件夹,里面可以拖动,可以排序可以删除,可以从文件夹拖动 到   一个  ButtonDropTarget等。

那我们来分析下:

1、图标在文件夹内,又可以拖动到文件夹内。  所以我们这个文件夹必须实现 2个接

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

重播

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值