(1) contentSzie定义了一个区域范围,在该区域范围内,UIScrollView可以左右/上下移动。
如frame = (0,0,320,480), contentSize = (320,960),则UIScrollView可以被用户手指上下移动,移动区域范围是frame高度的两倍。
contentSize = (320,0),表示只能水平滚动(不允许垂直滚动)。
(2) contentOffset是UIScrollView当前显示区域的顶点相对于UIScrollView的frame的坐标。UIScrollView实际上分为两层-scrollView(滚动视图,用于滚动)和contentView(内容视图,用于展示内容)。
scrollView的坐标原点即为其frame规定的位置,而contentView的起始位置是以scrollView坐标原点为原点,所展示内容的左上角那个点的坐标,即为contentOffset,可看作contentView左上角相对于scrollView左上角的位移偏移量。
常用于UIPageControl中获取当前页(currentPage,使用此功能先UIScrollView开启分页功能:self.scrollView.pagingEnabled = YES;)。
(3) contentInset是为scrollView增加额外的滚动区域。
如self.scrollView.contentInset = UIEdgeInsetsMake(50, 80, 0, 0); // 为scrollView顶部增加50,为其左边增加80的滚动区域。
该属性常被用于UITableView中以解决最后一行cell被底部控件遮住的问题。
UIEdgeInsetsMake中的四个值分别对应:顶、左、底、右(逆时针方向)。