2009-06-10 55 views
1

我试图在“触摸开始”事件和诸如播放声音之类的操作之间引入延迟。阈值过后,如果用户的手指保持相对静止,那么我希望逐渐增加音量,直到手指抬起或拖出矩形区域的效果。如果拖出来,我可能会发出不同的声音。确定触摸固定的时间长度

我从延迟开始,但我不知道如何确定手指在某个位置的持续时间。

回答

1

当您抬起手指或移动手指时,您获得触摸的消息。假设你的应用只支持单点触摸,这应该很容易。如果你支持多点触控,你需要弄清楚他们移动的是哪个手指。

1

您将需要设置一个您触发的计时器,以每1/10秒的速度增加音量。

您可以对这些计时器事件进行计数,或者将您的touchesBegan中的[NSDate date]存储起来,然后检查其他事件是否发生 - 移动的触摸会停留在您的矩形或计时器中。

后者是一种更灵活的方法,而不是一个重要的开销。