IOS UIScrollView用法总结

来源:互联网 发布:电影《美国黑帮》知乎 编辑:程序博客网 时间:2024/06/09 13:59

1.UIScrollView是一个能够滚动的视图控件,可以⽤用来展⽰示⼤大量的内容,并且可以通过滚动查看所有的内容


2.UIScrollView的简单使用

(1)将需要展⽰的内容添加到UIScrollView中

(2)设置UIScrollView的contentSize属性,告诉UIScrollView所有内容的尺⼨寸,也就是告诉 它滚动的范围(能滚多远,滚到哪⾥里是尽头)


3.属性

(1)常用属性:

1)@property(nonatomic)CGPoint contentOffset; 这个属性⽤用来表⽰示UIScrollView滚动的位置

2)@property(nonatomic)CGSize contentSize;这个属性⽤用来表⽰示UIScrollView内容的尺⼨寸,滚动范围(能滚多远)

3)@property(nonatomic)UIEdgeInsets contentInset; 这个属性能够在UIScrollView的4周增加额外的滚动区域

(2)其他属性:

1)@property(nonatomic) BOOL bounces; 设置UIScrollView是否需要弹簧效果

2)@property(nonatomic,getter=isScrollEnabled)BOOL scrollEnabled; 设置UIScrollView是否能滚动

3)@property(nonatomic) BOOL showsHorizontalScrollIndicator; 是否显⽰示⽔水平滚动条

4)@property(nonatomic) BOOL showsVerticalScrollIndicator; 是否显⽰示垂直滚动条


4.几个属性坐标示意图


contentoffset是个CGpoint类型的结构体,用来记录ScrollView的滚动位置,即记录着“框”跑到了哪里。知道了这个属性,就知道了其位置,可以通过设置这个属性来控制这个“框”的移动。

UIScrollView的frame与contentsize属性的区分:UIScrollView的frame指的是这个scrollview的可视范围(可看见的区域),contentsize是其滚动范围。


5 .UIScrollView的代理

在很多时候我们需要知道UIScrollView滚动到了那里,它是否停止,那些时候来做一些特定的操作,要想完成那些特定的动作进行时的功能,前提就是能够监听到UIScrollView整个滚动的过程
要想监听整个UIScrollView的滚动过程,就必须给它设置一个代理对象,通过代理得知UIScrollView的滚动过程

UIScrollView和delegate的通信

UIScrollView和delegate的通信应该如下表:
手势方法开始拖拽scrollViewWillBeginDragging:具体到某个位置scrollViewDidScroll:用户停止拖拽scrollViewDidEndDragging:willDecelerate:UIScrollView需要实现的方法都定义在UIScrollViewDelegate协议中,遵守协议后,实现协议中的方法就可以监听UIScrollView的滚动过程


6.分页

只要将UIScrollView的pageEnable属性设置为YES,UIScrollView会被分割成多个独立页面,里面的内容就能进行分页展示
一般会配合UIPageControl增强分页效果,UIPageControl常用属性如下:

一共有多少页    @property (nonatomic) NSInteger numberOfPages;当前显示的页码    @property (nonatomic) NSInteger currentPage;只有一页的时候,是否需要隐藏页码指示器    @property (nonatomic)BOOL hidesForSinglePage;其他页码的颜色    @property (nonatomic,retain) UIColor *pageIndicatorTintColor;当前页码指示器的颜色    @property (nonatomic,retain) UIColor *currentPageIndicatorTintColor;






原创粉丝点击