Cocoa touch 刷卡XCode的实时反馈
我已成功使用Cocoa touch 刷卡XCode的实时反馈,cocoa-touch,Cocoa Touch,我已成功使用UISWeepGestureRecognitizer更改视图,但它仅在我完成刷卡后才开始更改视图。当我开始在屏幕上拖动手指时,如何使其启动?我已经搜索过了,但找不到答案。手势识别器将等待确定做出了哪个手势。这就是为什么他们总是有一些延迟。另一种方法是实现您自己的刷卡处理程序。例如,您可以使用touchsbegind:touchsended:touchsmoved:和touchscancelled:-方法 (请记住通过为节点启用userInteractionEnabled属性来启用这些
UISWeepGestureRecognitizer
更改视图,但它仅在我完成刷卡后才开始更改视图。当我开始在屏幕上拖动手指时,如何使其启动?我已经搜索过了,但找不到答案。手势识别器将等待确定做出了哪个手势。这就是为什么他们总是有一些延迟。另一种方法是实现您自己的刷卡处理程序。例如,您可以使用touchsbegind:touchsended:touchsmoved:和touchscancelled:-方法
(请记住通过为节点启用userInteractionEnabled属性来启用这些方法)
用平底锅的姿势
UIPanGestureRecognizer *pan = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handlePan:)];
[self addGestureRecognizer:pan];
然后做:
- (void)handlePan:(UIPanGestureRecognizer *)gesture {
CGPoint touchPoint = [gesture locationInView:YOUR_VIEW];
UIView *draggedView = [gesture view];
switch ([gesture state]) {
case UIGestureRecognizerStateBegan:
break;
case UIGestureRecognizerStatePossible:
break;
case UIGestureRecognizerStateChanged:
break;
case UIGestureRecognizerStateEnded:
break;
case UIGestureRecognizerStateCancelled:
break;
case UIGestureRecognizerStateFailed:
break;
default:
break;
}
}
当你移动手指时,平移手势识别器会不断给你回叫。我从来没说过不会。我只是注意到(某些)手势识别器(如滑动)在触发之前总是有一点延迟。这就是为什么它们可能不适合需要即时反馈的情况。事实上,您可以使用PangestureRecognitor来实现自己的刷卡手势。我只是建议了另一种注册触摸的方法。
- (void)handlePan:(UIPanGestureRecognizer *)gesture {
CGPoint touchPoint = [gesture locationInView:YOUR_VIEW];
UIView *draggedView = [gesture view];
switch ([gesture state]) {
case UIGestureRecognizerStateBegan:
break;
case UIGestureRecognizerStatePossible:
break;
case UIGestureRecognizerStateChanged:
break;
case UIGestureRecognizerStateEnded:
break;
case UIGestureRecognizerStateCancelled:
break;
case UIGestureRecognizerStateFailed:
break;
default:
break;
}
}