English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Методы различения событий touch: одиночного и двойного клика на iOS

Если в вашем приложении для iPhone есть view, у которого есть как одиночные, так и двойные клики. Когда пользователь дважды нажимает на view, всегда сначала выполняется одиночный клик, а затем двойной клик. Поэтому при прямом判定 становится ясно, что нельзя сразу перейти к двойному клику. Вот метод для различения touch событий: одиночный клик или двойной клик

-(void)singleTap{
NSLog(@"Нажмите 1 раз");
}
-(void)doubleTap{
NSLog(@"Нажмите 2 раза");
}
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
NSTimeInterval delaytime = 0.4;//вам нужно самостоятельно регулировать
switch (touch.tapCount) {
case 1:
[self performSelector:@selector(singleTap) withObject:nil afterDelay:delaytime];
break;
case 2:{
[NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(singleTap) object:nil];
[self performSelector:@selector(doubleTap) withObject:nil afterDelay:delaytime];
}
break;
default:
break;
}
}

Указанные выше методы区分iator по событиям iOS touch для ответа на单击 и двойной клик,介绍的编辑器希望对大家有所帮助. Если у вас есть какие-либо вопросы, пожалуйста, оставьте комментарий, редактор ответит вам в ближайшее время!

Заявление: Контент этой статьи был взят из Интернета, авторские права принадлежат соответствующему автору, контент был自发но предложен и загружен пользователями Интернета, этот сайт не обладает правами собственности, не был обработан вручную, и не несет ответственности за связанные с этим юридические обязательства. Если вы обнаружите контент,涉嫌侵犯版权, пожалуйста, отправьте письмо по адресу: notice#oldtoolbag.com (при отправке письма, пожалуйста, замените # на @) для сообщения о нарушении,并提供相关证据. Если подтвердится, сайт немедленно удаляет涉嫌侵权的内容。

Вам может понравиться