【发布时间】:2014-05-28 02:14:07
【问题描述】:
当 UIScrollView 达到特定偏移量时,我将其禁用,并希望在手势识别器中重新启用它。我唯一的问题是,直到用户触摸从屏幕上抬起,滚动视图才得到触摸。
如何在不抬起手指的情况下重新启用滚动视图?
UIScrollViews 类别:
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
{
return YES;
}
UIPanGestureRecognizer *gestureRecognizer = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handlePanGesture:)];
gestureRecognizer.delegate = self;
gestureRecognizer.cancelsTouchesInView = NO;
gestureRecognizer.delaysTouchesBegan = NO;
gestureRecognizer.delaysTouchesEnded = NO;
[self.bodyScrollView addGestureRecognizer:gestureRecognizer];
- (void)handlePanGesture:(UIPanGestureRecognizer *)gesture
{
if (gesture.state == UIGestureRecognizerStateChanged) {
if (self.previousAssetsScrollViewOffset.y == -44
&& !self.bodyScrollView.scrollEnabled && !self.composeScrollView.scrollEnabled) {
self.bodyScrollView.scrollEnabled = YES;
self.composeScrollView.scrollEnabled = YES;
}
}
}
【问题讨论】:
标签: uiscrollview uigesturerecognizer uipangesturerecognizer