
方法gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:始终返回YES并且图像处理效果很好,但是……如何检测所有同时手势的结束,以便重置图像?
解决方法 一个简单的解决方案如计算当前正在处理的手势,并在所有这些手势结束时采取行动?.h文件:
int handledGesturesCount;
.m文件:
- (ID)init { (...) handledGesturesCount = 0;}// gesture handlers - the code for -pinch: repeats for -pan: and -rotate:- (voID)pinch:(UIPinchGestureRecognizer *)recognizer { if (recognizer.state == UIGestureRecognizerStateBegan) { handledGesturesCount += 1; } else if (recognizer.state == UIGestureRecognizerStateEnded || recognizer.state == UIGestureRecognizerStateCancelled || recognizer.state == UIGestureRecognizerStateFailed) { handledGesturesCount -= 1; if (handledGesturesCount == 0) { [self resetimage]; } }}- (voID)pan:(UIPanGestureRecognizer *)recognizer { if (recognizer.state == UIGestureRecognizerStateBegan) { handledGesturesCount += 1; } else if (recognizer.state == UIGestureRecognizerStateEnded || recognizer.state == UIGestureRecognizerStateCancelled || recognizer.state == UIGestureRecognizerStateFailed) { handledGesturesCount -= 1; if (handledGesturesCount == 0) { [self resetimage]; } }}- (voID)rotate:(UIRotationGestureRecognizer *)recognizer { if (recognizer.state == UIGestureRecognizerStateBegan) { handledGesturesCount += 1; } else if (recognizer.state == UIGestureRecognizerStateEnded || recognizer.state == UIGestureRecognizerStateCancelled || recognizer.state == UIGestureRecognizerStateFailed) { handledGesturesCount -= 1; if (handledGesturesCount == 0) { [self resetimage]; } }} 总结 以上是内存溢出为你收集整理的如何检测同时手势的结束? (IOS)全部内容,希望文章能够帮你解决如何检测同时手势的结束? (IOS)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)