iOS-contentSize、contentOffset和contentInset的区别

551 阅读1分钟

可参考:www.jianshu.com/p/9091e5f34…

总结:

  • contentSize,即内容,就是scrollview可以滚动的区域。比如frame = (0 ,0 ,100 ,200) contentSize = (100 ,400),代表你的scrollview可以上下滚动,滚动区域为frame大小的两倍。其中常用的是contentSize.height = 内容的高度。

  • contentOffset,即偏移量,其中分为contentOffset.y = 内容的顶部和frame顶部的差值,contentOffset.x = 内容的左边和frame左边的差值。contentOffset.y最为常用。

  • contentInset,即内边距,contentInset = 在内容周围增加的间距(粘着内容),contentInset的单位是UIEdgeInsets,默认值为UIEdgeInsetsZero。

  1. MJRefresh就是利用了contentInset属性。
  2. ScrollView实质就是修改它的bounds来进行view的滑动,可以在代理方法里打印ScrollView的bounds值来看。