安卓onTouch与onClick效率的区别

嘟嘟的历险 2016-01-26 04:31:39
现在有个安卓BLE通信的项目,其中有一个要求是,手指按着一个按钮不动后,会向一个下位机发送运行指令,使下位机可以运转,当手指松开后,会向下位机发送停止指令,使下位机停止运转。利用onTouch事件实现后,有时会产生比较大的延迟。现象是手指按下后,会间隔2s左右下位机才开始运行;或者手指松开后,间隔2s左右下位机才会停止运行。但是当利用onClick实现(即点击一个按钮发送运行指令,点击另一个按钮发送停止指令)后,延迟会减少很多,但是这样又不符合项目要求,请问各位大神们有什么好的解决办法。
...全文
200 3 打赏 收藏 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
柒加伊 2016-01-27
  • 打赏
  • 举报
回复
onTouch 的 DOWN/UP 事件是立即执行的, 而onClick是 DOWN和UP事件的集合, 我认为可能跟这个是有关联的, 有延迟应该是出现在通信那块, 你可以在下位机设置一个标记, 看看这两种方法执行之后信号到达下位机的时间排查一下.
God眯眯眼 2016-01-26
  • 打赏
  • 举报
回复
使用的setOnTouchListener吗?
lgxing 2016-01-26
  • 打赏
  • 举报
回复
onTouch事件按下处理可能是太快了,你下位机无法做到响应那么快 因为在onTouch事件中,down事件非常密集,你发送指令太快,可能没有处理好导致的

80,490

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧