UIGestureRecognizer нажмите и удалите - PullRequest
1 голос
/ 06 сентября 2011

У меня есть UILongPressGestureRecognizer, который запускает метод -(void)didPress. Текущий вид по умолчанию имеет UIImage. didPress заставляет UIImage исчезнуть с экрана. Однако изображение должно исчезать только с экрана, пока пользователь еще долго нажимает. Как только пользователь отпустит начальное долгое нажатие, изображение появится снова. У меня уже есть код для обработки начального длинного нажатия, но я не уверен, как определить, когда пользователь отпустил это длинное касание.

1 Ответ

4 голосов
/ 07 сентября 2011

Вы должны передать UILongPressGestureRecognizer вашему методу и проверить состояние жеста. Когда пользователь убирает палец с экрана, он отправляет состояние UIGestureRecognizerStateEnded

- (void)didPress:(UILongPressGestureRecognizer *)recognizer {
   if (recognizer.state == UIGestureRecognizerStateBegan) {
     NSLog(@"Started");
   }
   if (recognizer.state == UIGestureRecognizerStateEnded) {
     NSLog(@"Finished");    
   }
}

Использование touchesBegan: withEvent: устарело и намного раньше, чем UIGestureRecognizer's

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...