我有一个 View ,并将 UIPanGestureRecogniser 应用于此 View :
UIPanGestureRecognizer *panGesture = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(panAnim:)];
[sliderView addGestureRecognizer:panGesture];
[panGesture release];
我可以很好地检测和处理手势。但是,我希望在手势结束后启动另一种方法。
我知道有两种方法可以进行这种检测。
touchesEnded
和 touchesCancelled
但是,我发现 touchesCancelled
会在触摸变成手势后立即被调用,即我移动手指足以保证手势调用,并且 0x2513.431231 很少被调用我希望能够向左/向右平移,然后在手势结束时启动另一个函数调用。我该怎么做呢?
最佳答案
平移手势结束事件可以通过使用 UIGestureRecognizerStateEnded
检查其状态来检测。
检查下面的代码。
-(void) panAnim:(UIPanGestureRecognizer*) gestureRecognizer
{
if(gestureRecognizer.state == UIGestureRecognizerStateEnded)
{
//All fingers are lifted.
}
}
来自苹果文档Read more about UIPanGestureRecognizer
关于objective-c - 检测平移手势结束,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6467638/