iOS:如何仅在用户拖动滚动条时允许滚动



我一直在尝试使用UIScrollView创建一个可滚动的视图。我希望这个视图是一个暂存器,我可以在其中使用触摸手势进行粗略的工作。但是,执行拖动手势会使UIScrollView移动页面。这就是为什么我想禁用手势滚动并仅在屏幕上拖动滚动条时才启用滚动的原因。我尝试过谷歌搜索,但到目前为止还没有找到任何结果。

如果您能指导我找到解决方案或帮助我提供一些指示,那就太好了。

不确定您可以或是否可以使用。

仅用 2 根手指启用滚动怎么样?通过将滚动视图平移手势设置为 2 minimumNumberOfTouches

否则,请考虑充当滚动视图平移手势的委托,专门用于gestureRecognizer:shouldReceiveTouch:以便您可以检查触摸位置,并且只允许手势开始明显靠近视图的边缘。

我世界推荐使用此库:https://github.com/BasheerSience/BRScrollBar

1-使用实例方法添加滚动条
2-在您的UIView控制器中添加这些代码

// First intit by using the instance method 
_brScrollBarController = [BRScrollBarController initForScrollView:self.scrollView
                                                       inPosition:kIntBRScrollBarPositionRight
                                                         delegate:self];
// show the scrollBar always, do not hide
_brScrollBarController.scrollBar.hideScrollBar = NO;
// disable scrolling for your scrollView
self.scrollView.scrollEnabled = NO;

3-现在您的scrollView不会响应手势,您将使用BRScrollView通过拖动栏进行滚动

如果您有任何问题,请告诉我

最新更新