UIView不会在UIScrollView中垂直滚动

时间:2015-07-05 15:52:38

标签: ios xcode swift uiview uiscrollview

我有UIViewController。它有UIViewUILabel内有三个对象(UIImageViewUITextViewUIScrollView)。当我尝试滚动垂直时没有任何反应。我使用autolayout。我在UIView内没有UIScrollView之前创建它,但底部有一个空白区域。

@IBOutlet weak var scrollView: UIScrollView! {
    didSet {
        scrollView.delegate = self
        scrollView.scrollEnabled = true
        self.scrollView.frame.size = scrollView.contentSize //12
    }
}

enter image description here enter image description here

3 个答案:

答案 0 :(得分:1)

问题在于您将滚动视图的帧大小设置为等于滚动视图的内容大小。滚动视图仅在其内容大于其框架时滚动。而是设置滚动视图的框架大小以匹配容器视图的大小,并将内容大小的高度设置为文本视图的底部。

答案 1 :(得分:1)

如果您使用自动布局,则无需设置scrollview的框架,请为您的视图提供滚动视图高度约束的子视图,例如800并设置scrollview和外部视图宽度约束以匹配每个设备的宽度,并使用autolayout设置scrollview框架,这将开始滚动。

请参阅此link了解更多详情

答案 2 :(得分:0)

当我们使用带有自动布局的scrollview时,它有点混乱,但是你看到滚动视图的行为,那么你就会很容易理解它。

对于四个侧面的scrollview设置约束为0。 然后检查您的视图大小(您在scrollview中添加)并将其设置为scrollview内容大小。 对于具有滚动视图宽度的视图集等权重约束。

我希望它会对你有所帮助。