所以我正在为Android编写音乐应用程序,其中触摸屏幕上的各种对象会导致相关的声音播放。我的问题是,在识别ACTION_DOWN MotionEvent方面有一个巨大的(200-400ms)延迟,至少在我的新(2013)谷歌Nexus 7上。有什么奇怪的是ACTION_UP(大多数情况下都是如此)其他MotionEvents)几乎没有任何延迟响应。
现在,我应该清楚:在接收到初始ACTION_DOWN之后,其他运动事件几乎没有任何延迟响应。看起来手势有一个初始延迟,但是一旦你有一个手势并且已经调用了ACTION_DOWN,那么之后的所有动作都会立即响应。所以只是在ACTION_UP上进行回放并不是真的有用,因为它仍然需要首先进行ACTION_DOWN。
为什么会发生这种情况,如果可以做任何事情让ACTION_DOWN更快被识别呢?
其他一些注意事项:我确实打开了指针位置"覆盖在开发人员选项中,并在那里找到相同的延迟。另一方面,我注意到当使用屏幕键盘输入时,ACTION_DOWN响应非常直接。所以,我不知道该怎么想。
谢谢!