指导UIScrollView和自动布局

我正在努力与UIScrollView和AutoLayout。 我读博客 ,试图做我自己的东西。 但是,Xcode报告含糊不清的内容大小。 我从超级视图设置scrollview和领先,尾随,顶部,底部约束为0。

有一个UIView作为容器来容纳我所有的子视图,包括两个UILabel元素和两个UICollectionView视图。 我将容器视图设置为与View控制器视图相等的宽度和相等的高度。 然后,我将UILabelUICollectionView视图约束全部设置为0.但是,它的运行如下图所示。

请帮我或给我一些关于UIScrollView和AutoLayout的文档或指南。

约束

问题

screnshot

你的主要问题是,scrollView的内容(即你的容器视图)不固定在scrollView。

这是我的build议:

1)删除容器视图的宽度和高度的限制。

2)将容器视图的左侧,顶部,右侧和底部固定到scrollView的左侧,顶部,右侧和底部。 通过这样做,不pipe你的容器视图是多大,它将定义scrollView的可滚动区域。

3)如果你只想让你的内容垂直滚动,将容器视图的宽度限制为scrollView的宽度。

4)你需要指定容器视图的高度。 你可以通过给它一个固定的高度限制来做到这一点。 确保它比scrollView的高度大,否则不会滚动。 另一种方法是确保其内容视图大小已完全指定,并将容器视图中最顶部的视图固定到容器视图的顶部,并将容器视图中最底部的视图固定到底部,视图应垂直固定在一起。 换句话说,对于自动布局,您应该在容器视图中有足够的约束来计算容器视图的高度。