在使用Storyboard和xib时,我们经常要用到ScrollView,在普通的view上直接添加一些控件是不需要做任何处理,只需要添加四周的约束即可,但是在使用ScrollView时这样操作便会出现问题。
原因就在于:我们通过代码时设置ScrollView时需要设置其ContentSize,而在Storyboard或xib中并没有这一设置,那么问题就来了,需要通过什么才能设置其ContentSize呢?
具体方法如下
** 1.拖拽ScrollView,选中添加约束,设置距离superView 上下左右都是0**
ScrollView
** 2.拖拽一个View到ScrollView上, 然后添加上下左右四周约束都为0。**
View
3.添加完之后, 可能会报一个错, 如上图, 这个暂时别去管。
4.接下来我们先确定一下滚动方向
水平方向滚动、竖直方向滚动、水平方向和竖直方向都需要滚动
竖直方向滚动需要添加下面一个约束
竖直方向滚动
水平方向滚动如下设置
水平方向滚动
5.最后需要设置View的高度,这个高度就是ScrollView的竖直滚动的范围了(如果是水平滚动,需要设置宽度,原理类似)
好了到这里就基本完成了
注意如果是想要动态设置ScrollView的高度,也就是设置View的高度约束的值, 我们将其拉成属性, 然后修改其值。
如果是确定的高度, 可以在- (void)updateViewConstraints这个方法中修改,也可以在别处修改。
- (void)updateViewConstraints{
[super updateViewConstraints];
// self.scrollViewHeight.constant = 100;
}