触摸开始和触摸结束之间的时间

时间:2009-08-20 11:42:21

标签: iphone objective-c

在objective-c中是否有任何方法可以找到触摸开始和触摸结束之间的时间?

3 个答案:

答案 0 :(得分:19)

// add this ivar to your view controller
NSTimeInterval lastTouch;

 // assign the time interval in touchesBegan:
 -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;
 {
     lastTouch = [event timestamp];
 }  


 // calculate and print interval in touchesEnded:
 -(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event;
{
    NSTimeInterval touchBeginEndInterval = [event timestamp] - lastTouch;

    NSLog(@"touchBeginEndInterval %f", touchBeginEndInterval);
}   

答案 1 :(得分:2)

每个UITouch都有自己的时间/日期标记。比较你感兴趣的那些。在UIResponder class ref。

上找一个looke

Aside-SO需要更新代码或发布iPhone应用程序。用iPhone键入他们的javascriptoided文本字段几乎是滑稽的。

答案 2 :(得分:0)

touchesBegan:withEvent:方法中,创建一个NSDate对象并将其存储在实例变量中。 (对于非调试目的,每次触摸创建一个日期并使用CFMutableDictionary将日期与触摸相关联。)然后,在touchesEnded:withEvent:中,检索存储的日期并创建新日期,并将后者发送给{{1} 1}}消息从中减去旧日期,以秒为单位给出结果。