我有UILongPressGestureRecognizer
触发方法-(void)didPress
。默认情况下,当前视图为UIImage
。 didPress
让UIImage
从屏幕上消失。但是,只要用户长按,图像就应该从屏幕上消失。一旦用户放开了初始长按,图像就会重新出现。我已经有了处理初始长按的代码,但我不确定如何确定用户何时放弃了长时间的触摸。
答案 0 :(得分:4)
你应该将UILongPressGestureRecognizer传递给你的方法并检查手势的状态,当用户将手指/手指从屏幕上移开时,它会发送一个状态为UIGestureRecognizerStateEnded
- (void)didPress:(UILongPressGestureRecognizer *)recognizer {
if (recognizer.state == UIGestureRecognizerStateBegan) {
NSLog(@"Started");
}
if (recognizer.state == UIGestureRecognizerStateEnded) {
NSLog(@"Finished");
}
}
使用touchesBegan:withEvent:在UIGestureRecognizer之前已经过时了