0

我想在 contentSize 中实现我自己的平移滚动,但允许 scrollView 处理 contentSize 之外的反弹。我似乎无法让它工作。

我试过 requiresGestureRecognizerToFail:,将它设置在所有滚动视图的识别器和我的平移之一之间。

我还尝试在我的平移识别器上实现三个委托方法,当 contentOffset 超出 contentSize 时返回 YES。

欢迎任何提示或建议!即使您不知道解决方案,但有一个可行的想法,请发布!谢谢。

4

1 回答 1

0

实现UIGestureRecognizerDelegate

使用这种方法:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch

并在内部进行条件检查,禁用滚动视图,并让手势控制……类似于(完全编造数字):

if (self.scrollView.contentSize > 100) {
    self.scrollView.scrollEnabled = NO;
    [self performSelector:@selector(reenableScrollView) afterDelay:0.3f];
    return YES;
} else {
    return NO;
}

然后重新启用滚动视图

- (void)reenableScrollView {
    self.scrollView.enabled = YES;
}
于 2012-12-13T04:01:20.543 回答