Обнаружение дискретных сенсорных событий - PullRequest
1 голос
/ 16 июля 2010

Как изолировать сенсорные события друг от друга?Например, у меня есть один метод, который должен быть вызван, если представление обнаруживает одно касание, и другой метод, который должен быть вызван, если представление обнаруживает двойное касание.Проблема, связанная с тем, как я это делаю, заключается в том, что двойное касание всегда интерпретируется как одно касание, а затем двойное касание.Так, например:

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {

 UITouch *touch = [touches anyObject];
 if ([touch tapCount] == 1) {
NSLog(@"one touch");
 } else if ([touch tapCount] > 1) {
 NSLog(@"multi taps");
 }
}

Если бы я записал на экран одну ленту, я бы правильно записал «одно касание».Однако, если я дважды приклею экран к экрану, я получу записанные заявления, сначала «одним касанием», а затем сразу «несколькими нажатиями».

Я уверен, что это просто, но кто-то может указать мне направильное направление?

1 Ответ

1 голос
/ 16 июля 2010

Нашел ответ: http://www.iphonedevsdk.com/forum/iphone-sdk-development/3578-tap-double-tap.html

Вы используете переключатель и затем отменяете ожидающие запросы, то есть:

[NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(singleTapMethod) object:nil];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...