0

我有UILongPressGestureREcognizer一个最小新闻长度为 0 秒的。在UIGestureRecognizerStateStart我改变 UIView。在 上UIGestureRecognizerStateEnded,我为新闻界应该做的事情运行代码。

-(IBAction)longPressDetected:(UILongPressGestureRecognizer *)recognizer {    
    static NSTimer *timer = nil;

    if (recognizer.state == UIGestureRecognizerStateBegan) {
        // alter look of UIView
    }
    else if (recognizer.state == UIGestureRecognizerStateEnded) {
        // do something
        // change look back to original state
    }
}

我遇到了一个问题,如果触摸开始于UIView并且如果触摸被拖到外部UIView并被抬起,UIGestureRecognizerStateEnded仍然会触发。

我需要能够处理 内部的触摸UIView,用户拖动外部UIView并取消它。

我知道 aUIButton可以做到,但它并不能满足我的所有需求。

如果触摸被拖到外部,如何取消触摸UIView

4

1 回答 1

1

添加触摸位置检查。这种方法可以是有益的。

- (CGPoint)locationInView:(UIView *)view

于 2013-09-27T14:43:14.137 回答