【发布时间】:2019-01-22 08:14:24
【问题描述】:
我做了一个滑动手势并从 ScrollView 中的 dispatchTouchEvent 跟踪它。然而,滑动手势的结束在一帧之后被检测到。请参阅下面的最后两个事件,最后两个手势是 ACTION_MOVE 和 ACTION_UP。但是它们的接触点完全相同,只是它们的事件时间不同。
action=ACTION_MOVE, x[0]=734.165, y[0]=1241.4056, historySize=2, eventTime=136103401 action=ACTION_MOVE, x[0]=747.8897, y[0]=1077.508, historySize=2, eventTime=136103418 action=ACTION_UP, x[0]=747.8897, y[0]=1077.508, historySize=0, eventTime=136103432
136103432 - 136103418 = 14。所以 ACTION_UP 将在 14 毫秒后被检索。这会阻止我在手指离开屏幕后立即执行一些平滑效果。
您可以从这里查看完整日志:https://zerobin.net/?a71539bf3862abdb#xXjCPrjk/Fi7l+N++9oivQkieFRQ3KA6gwQ0pU2NTYc=
那么,如何在 dispatchTouchEvent 中更早地检测到 ACTION_UP?
【问题讨论】:
标签: android touch latency dispatch touch-event