scrollView的contentSize,contentOffset,contentInsets以及xib自动布局

scrollView三个属性含义解释

http://www.xuebuyuan.com/693438.html,首先参考这个网址的介绍,contentSize和contentOffset就不多说了,理解起来比较简单,关键在于后面这个contentInsets,可以这么理解,这个contentInsets对于前面两个属性是没有影响的,但是他的作用等于增大了contentSize的范围(应该说是可以看见的范围,但是并没有改变contentSize的大小)

scrollView自动布局

  1. 首先将scrollView放入view中(scrollView本身就是视角的大小),然后设置后约束,如图中灰色部分。
    scrollView的contentSize,contentOffset,contentInsets以及xib自动布局_第1张图片

  2. 然后往scrollView中再放入一个view(自动布局会将这个view当做scrollView的contentView,也就是说,以scrollView为视角,内部可以滚动的部分为contentview,即此时放入的view)入上图中的黄色部分。

  3. 设置黄色部分view距离scrollView的上下左右的距离(我看到网上很多说这个是设置contentInsets,不过我感觉其实并不是,因为打印出来的contentInsets的值一直为0,并且设置的这部分上下左右的距离算入了contentSize里面,所以我觉得这个上下左右的距离是初始的scrollView视角中这个黄色部分view相对于scrollView的开始位置)
    scrollView的contentSize,contentOffset,contentInsets以及xib自动布局_第2张图片
    如图所示设置黄色部分与scrollView的上下左右距离为0.

  4. 设置黄色部分的高度与宽度,(可以通过设置与别的view的高度宽度相等或者倍数或者设置一个固定值)。
    以上设置完以后,scrollView的自动布局完成,scrollview的contentSize大小为设置的上下左右距离加上高度与宽度。cotentInset的各个值为0,content offset为(0,0)。

你可能感兴趣的:(scrollView的contentSize,contentOffset,contentInsets以及xib自动布局)