【发布时间】:2011-05-10 01:08:33
【问题描述】:
好的,所以在业余时间创建游戏时,我在尝试围绕以下场景编写代码时完全被卡住了:
我想捕捉点击事件 (TouchEvent.ACTION_DOWN),然后每隔 500 毫秒,我想检查一下屏幕是否仍然被按下,然后无限重复相同的动作。
所以,我开始了:
switch (myTouchHandler.getAction()) {
case (TouchEvent.ACTION_DOWN):
case (TouchEvent.ACTION_MOVE):
if (inputIntervalTooSoon()) return true;
//do the magic i intend to do....
}
....
private boolean inputIntervalTooSoon() {
final long now = System.currentTimeMillis();
if ((now - lastTouchEventTime) < 500) return false;
lastTouchEventTime = now;
return true;
这会产生它会等待 500 毫秒的效果,但它不会立即开始检测我的手指是否仍然向下。如果我稍微移动一下手指,它就会重新拾起它,然后回到休眠状态。
如果我不包含 Interval 函数,我的动作就会不断触发。任何关于如何更好地实现这一点的想法将不胜感激。
【问题讨论】:
标签: android ontouchlistener touch-event