UIScrollView在Autolayout自动布局中如何自适应滚动长度?

在iOS开发中,当使用UIScrollView展示内容时,内容超出屏幕长度的情况下,我们会通过UIScrollView的contentSize来设置它的滚动长度。

如果scrollView上的内容较多,且不同部分的高度是随后台配置内容所改变的,这种情况想要算出contentSize就比较麻烦了。当然,如果使用Autolayout来布局是可以让scrollView自动来适应滚动长度的。

第一步:在UIScrollVIew上添加一个UIView,添加上下左右对齐和竖直居中的约束。现在为什么有报错呢?原因是View上没有内容scrollView不能确定滚动的高度。

UIScrollView在Autolayout自动布局中如何自适应滚动长度?

第二步:在View上添加内容内容。如下图,两张固定高度的图片,一个随字数多少而高度自适应的label。约束设置完成以后发现第一步出现的错误没有了,这是因为view通过它之上的控件内容能自动得出自身的长度,而scrollView的滚动长度就是view的实际长度,所以约束完整,scrollView滚动长度能得出实际值。UIScrollView在Autolayout自动布局中如何自适应滚动长度?

第三步:运行起来,看看效果是否达到