Open pansong291 opened 2 months ago
你可以在 onLongClick
中通过调用 Draggable
类中的 isTouchMoving
方法来判断当前是否移动状态,如果是则不往下执行。
你可以在
onLongClick
中通过调用Draggable
类中的isTouchMoving
方法来判断当前是否移动状态,如果是则不往下执行。
这样也会有概率触发长按事件,只要触发长按的瞬间松手就会。有个动画结束的回调,我也试过了,跟视频里一样。
https://github.com/user-attachments/assets/e487b85f-e42b-4724-94c8-0165c640adef
你说的这种场景很难触发吧?我按照你的要求进行测试,试了十几次才试出来一次,这种需要卡特定节点才能复现,即松手的时间刚好是长按设定的秒数。
目前针对这个问题,没有发现好的解决方案,如果你有的话,欢迎你提供给我。
你说的这种场景很难触发吧?我按照你的要求进行测试,试了十几次才试出来一次,这种需要卡特定节点才能复现,即松手的时间刚好是长按设定的秒数。
主要是我想长按的时候弹个对话框,但是如果随手一拖再松开时恰好弹出对话框,有点影响体验,用户也会迷惑。
还有就是我试了 SpringBack 动画的结束回调,但是也是松开一瞬间就触发长按了,动画结束的回调是松开时就被调用了的吗?
目前针对这个问题,没有发现好的解决方案,如果你有的话,欢迎你提供给我。
用户开始拖动时,移除长按事件,拖动结束再设回长按事件。不知道可不可行
试过了,不行 😑😑
框架版本【必填】
10.62
问题描述【必填】
子 View 注册了一个长按事件,并且启用了悬浮窗的可拖拽,如果恰好按在注册了长按事件的子 View 上进行拖拽,就会在拖拽的过程中触发长按事件。
复现步骤【必填】
是否必现【必填】
是
项目 targetSdkVersion【必填】
34
出现问题的手机信息【必填】
Xiaomi 13
出现问题的安卓版本【必填】
14
问题信息的来源渠道【必填】
自己遇到的
是部分机型还是所有机型都会出现【必答】
不清楚,我只有一个手机,没有模拟器。
框架最新的版本是否存在这个问题【必答】
是
框架文档是否提及了该问题【必答】
否
是否已经查阅框架文档但还未能解决的【必答】
是
issue 列表中是否有人曾提过类似的问题【必答】
有个点击的,不过测试点击是没问题的,长按就会出现此问题。
是否已经搜索过了 issue 列表但还未能解决的【必答】
是
是否可以通过 Demo 来复现该问题【必答】
是
提供报错堆栈
No response
提供截图或视频
No response
提供解决方案
No response