- contentSize 是scrollview可以滚动的区域,比如frame = (0 ,0 ,320 ,480) contentSize = (320 ,960),代表你的scrollview可以上下滚动,滚动区域为frame大小的两倍。
- contentOffset 是scrollview当前显示区域顶点相对于frame顶点的偏移量(向屏幕内拉,偏移量是负值。向屏幕外推,偏移量是正数),比如上个例子,从初始状态向下拉50像素,contentoffset就是(0 ,-50),从初始状态向上推tableview100像素,contentOffset就是(0 ,100)。
- contentInset 是scrollview的contentview的顶点相对于scrollview的位置,例如你的contentInset = (0 ,100,0,0),那么你的contentview就是从contentSize的(0 ,100)开始显示.
注意:
- contentOffset是显示的状态属性,不影响布局,你滑动一下就变动,同时属性设置要合理,不合理就无效(当然不合理是会选择一种接近的显示方式,内部方法了)
- contentInset左右间距,也不更改内容View的布局(frame)。
3.scrollView类似于显示的一个容器(像地图),frame只是决定显示的窗口,contentInset和contentSize决定整个显示的内容,contentInset 在内容的基础上添加和删减 - contentSize只是大小,没有确定的位置。和contentInset共用是才确定每个View的展现(视角)。contentSize设置错误可能出现无法解释的状态(contentSize,设置过小等)