嵌套滚动视图的滚动无法正常工作

Posted

技术标签:

【中文标题】嵌套滚动视图的滚动无法正常工作【英文标题】:Scrolling not working properly for nested scrollviews 【发布时间】:2016-06-14 18:10:12 【问题描述】:

我面临here 提到的类似问题。但是这里给出的解决方案是在内部滚动视图滚动时禁用和启用外部滚动视图。这工作正常,但使用外部滚动视图形式内部滚动视图并不好。它使我的代码变坏了。有谁知道我如何在不使用外部滚动视图的情况下实现这一目标

【问题讨论】:

【参考方案1】:

看看this。这是快速版本:

func scrollViewDidScroll(scrollView: UIScrollView) 

var offset: CGPoint = scrollViewA.contentOffset() //or scrollViewB




func setContentOffset(contentOffset: CGPoint, animated: Bool) 

if scrollView == scrollViewA 
    // change offset of B

else 
    // change offset of A 



【讨论】:

我无权访问外部滚动视图实例。 有什么方法可以阻止滑动事件从内部滚动视图传递到外部滚动视图。 取消嵌套滚动视图怎么样?与其在另一个滚动视图中嵌入滚动视图,不如让它们成为父 UIView 的同级兄弟。已回复here。 这是可以做到的。但就我而言,我不能让他们成为兄弟姐妹。由于某种原因,它们必须嵌套。

以上是关于嵌套滚动视图的滚动无法正常工作的主要内容,如果未能解决你的问题,请参考以下文章