2
在iPhone OS上,-touchesEnded:withEvent:當您離開手指時會迅速觸發,除非出現拖動。如果-touchesMoved:withEvent:已經被觸發,那麼在你觸發已經觸發之前大約有0.6秒的延遲:withEvent :.touchesEnded:withEvent:如何解決延遲之前的延遲
我在一個新的項目中驗證了這個,沒有scrollView,沒有多點觸摸。
我希望用戶拖動一個物體,然後在他舉起手指時立即觸發一個方法。 0.6秒的延遲是不可接受的。
處理這個問題的任何想法?
編輯:我已經寫在測試項目中唯一的代碼是這樣的:
@implementation MyView
// startTime is an ivar
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
startTime = [NSDate timeIntervalSinceReferenceDate];
}
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
NSLog(@"%f", [NSDate timeIntervalSinceReferenceDate] - startTime);
}
你在移動的事件中做什麼?你有手勢識別器連線了嗎? – Eiko 2010-08-19 21:30:22
什麼也沒有。這是一個新的空白項目。我已經寫的唯一代碼是這樣的: @implementation MyView的 - (無效)的touchesBegan:(NSSet中*)觸摸withEvent:方法(的UIEvent *)事件{ \t STARTTIME = [的NSDate timeIntervalSinceReferenceDate]; //開始時間是一個實例變量 } - (無效)touchesEnded:(NSSet中*)觸摸withEvent:方法(的UIEvent *)事件{ \t的NSLog(@ 「%F」,[NSDate的timeIntervalSinceReferenceDate] - 開始時間); } – 2010-08-19 21:46:31
那麼,這個評論是不是很可讀,所以我編輯了這個問題。 – 2010-08-19 21:51:33