0

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

4

3 回答 3

2

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

于 2012-05-01T20:12:12.840 回答
0

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

IE。

bool beingHandled = false;
onTouch(){
  if (beingHandled)
    return;
  beingHandled = true;
  //code  .... ///
  beingHandled = false;  
}
于 2012-05-01T20:11:32.110 回答
0

在 onTouchEvent() 方法中维护一个静态变量,用于跟踪最后一次按下,并且只有在足够的时间过去后才调用 characterJump() 函数。您甚至可以使用几个变量...自上次 characterJump() 调用以来的时间以及自上次触摸事件以来的时间,以允许在多次按下后跳转(如果它们继续)

于 2012-05-01T20:13:19.613 回答