是什么?
是控件,继承UIView!
有什么作用?
能够实现滚动,缩放功能!
滚动
常用属性
contentSize:
内容大小(告诉UIScrollView,展示内容实际有多大!)
也就是UIScrollView,能够滚动多远.
contentOffSet:
1.内容(UIScrollView后面的图片)相对于UIScrollView左上角的位
2.内容滚动到的位置.
contentInset:
内容的内边距(想象,将内容加大了“一圈”)
bounces(是否有弹簧效果)
scrollEnabled(是否滚动)
showsHorizontalScrollIndicator -是否显示水平滚动
showsVerticalScrollIndicator - 是否显示垂直滚动
pagingEnabled - 是否启动分页
常用代理的方法
-(void)scrollViewDidScroll (用户在滚动时)
-(void)scrollViewWillBeginDragging(用户开始拖拽时)
-(void)scrollViewDidEndDragging(拖拽结束时)
其他方法
- (void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated;(偏移时,自带动画)
缩放
常用属性
maximumZoomScale - 最大缩放比
minimumZoomScale - 最小缩放比
常用代理方法
scrollViewWillBeginZooming(即将开始缩放)
scrollViewDidZoom(正在缩放的时候调用)
scrollViewDidEndZooming(缩放完毕的时候调用)
注意:
- UIScrollView控件本身不‘滚动’‘缩放’,是UIScrollView里面的内容(图片,表格,其他控件)进行滚动/缩放
- 为什么不能滚动的原因?
1.没有设置contentSize的大小 (没有设置展示内容的实际大小)
2.scrollEnabled = NO (不允许滚动)
3.userInteractionEnabled = NO(不允许用户交互,也就没有触摸事件了)
4.contentSize的大小 <= UIScrollView.frame.size - contentSize和frame.size的区别?
frame.size - 可视区的大小(UIScrollVie的大小)
contentSize - UIScrollView里面展示内容的实际大小,一般比UIScrollView大,不然怎么滚动,也没有意义!