iOS开发-UIScrollView的几个属性-contentSize contentOffSet contentInset

(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中的四个值分别对应:顶、左、底、右(逆时针方向)。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容