Android点击限制器

时间:2012-05-01 20:07:03

标签: android tap

我正在为Android制作一个简单的侧滚动应用程序,用户必须避开障碍物,目前用户点击屏幕跳转,这是由onTouchEvent()方法拾取的,问题是,如果用户反复点击屏幕,则角色会上下跳跃,然后重复这个用户点击的次数,我不会做的是让应用程序只接受第一个用户点击。有什么建议吗?

3 个答案:

答案 0 :(得分:2)

当您阅读水龙头时,设置一个标志,显示水龙头响应(跳跃)正在进行中。当标志条件为真时,接受点击事件并丢弃它们。当你准备好进行另一次跳跃时,清除标志。最简单的方法可能是存储系统时钟时间,只知道跳转的持续时间。但是你也可以使用其他一些标准,例如到达跳跃动画的结尾。

答案 1 :(得分:0)

只需创建一个处理标志,直到触发完整事件,然后再次允许输入。

bool beingHandled = false;
onTouch(){
  if (beingHandled)
    return;
  beingHandled = true;
  //code  .... ///
  beingHandled = false;  
}

答案 2 :(得分:0)

在onTouchEvent()方法中维护一个静态变量,用于跟踪最后一次按下,如果已经过了足够的时间,则只调用一个characterJump()函数。您甚至可以使用几个变量...自上次characterJump()调用以来的时间以及自上次触摸事件以来的时间,以便在几次按下后允许跳转