2009-08-20 107 views

回答

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); 
} 
0

在你的touchesBegan:withEvent:方法中,創建一個NSDate對象並將其存儲在一個實例變量中。 (對於非調試目的,請爲每次觸摸創建一個日期,並使用CFMutableDictionary將日期與觸摸關聯。)然後,在touchesEnded:withEvent:中,檢索存儲的日期並創建一個新日期,併發送後者一個timeIntervalSinceDate:消息以減去較舊從它的日期,在幾秒鐘內給你結果。

+0

這是我的理解cocos2d負責實施這些方法並將它們抽象出來。 – jbrennan 2009-08-20 18:00:49

+0

@jbrennan,怎麼樣?你能詳細說明一下嗎? – 2016-04-24 04:51:56

2

每個UITouch都有自己的時間/日期標記。比較你感興趣的人。在UIResponder類別參考。

Aside- SO需要更新他們的代碼或發佈iPhone應用程序。用iPhone輸入他們的javascriptoided文本字段幾乎是滑稽的。