2010-08-19 5 views
2

iPhone OS에서 -touchesEnded : withEvent : 드래그가없는 한 손가락을 놓을 때 빠르게 발동합니다. -touchesMoved : withEvent :가 실행되면 touchesEnded : withEvent :를 얻기 전에 약 0.6 초가 지연됩니다.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); 
} 
+0

이동 한 이벤트에서 무엇을하고 있습니까? 제스처 인식기를 연결 했습니까? – Eiko

+0

아무것도 아니요. 이것은 새로운 빈 프로젝트입니다. I 작성한 유일한 코드는 다음이다 : @implementation MYVIEW - (무효) touchesBegan : (NSSet *)는 withEvent 접촉 (의 UIEvent *) 이벤트 { startTime을 \t =있는 NSDate timeIntervalSinceReferenceDate]; // startTime을가 } 아이바는 - (공극)이 touchesEnded (NSSet *) withEvent 접촉 (의 UIEvent *) 이벤트 { \t NSLog ("%의 F"@ [있는 NSDate timeIntervalSinceReferenceDate] - startTime을); } –

+0

글쎄, 그 코멘트는 읽기가 쉽지 않아서 질문을 편집했습니다. –

답변

3

문제를 발견. 시뮬레이터를 실행할 때 Magic Trackpad는 터치가 끝났음을 결정하기 전에 지연을 추가합니다.

관련 문제