Java-触摸事件过多会减慢Android应用的运行速度

前端之家收集整理的这篇文章主要介绍了Java-触摸事件过多会减慢Android应用的运行速度 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在编写一个需要接收触摸事件的Android游戏.我的问题是,每当用户在屏幕上拖动手指时,就会将如此多的触摸事件发送到触摸事件处理程序(我认为它作为单独的线程运行),导致我的帧速率骤降!我可以限制每秒处理的触摸事件数的最佳方法是什么?

例如,如果我的游戏以60 fps的速度运行,那么我真的不需要每秒处理1个以上的触摸事件.我能做到这一点而不会丢失任何信息(即有关用户最后触摸屏幕的位置的重要信息)吗?

最佳答案
我的猜测是不是触摸事件,而是事件的处理.确保您只是在处理所需的事件类型(即向下或移动),而忽略其他事件.另外,如果时间不比所存储的时间大1秒,则可能需要存储时间并提前退出事件.

public boolean onTouchEvent(MotionEvent event) {
    float x = event.getX();
    float y = event.getY();

    switch (event.getAction()) {
    case MotionEvent.ACTION_DOWN:

猜你在找的Android相关文章