今天我们讲讲 UIScrollView 的设置 。 还是那句老话: 新手学习 、大神略过。
- UIScrollView 的定义
var scrollView = UIScrollView()
- 常用属性设置
self.view.backgroundColor = UIColor.gray
scrollView.frame = CGRect(x: 50, y: 100, width: 300, height: 200)
scrollView.backgroundColor = UIColor.red
// 监测目前滚动的位置
//scrollView.contentOffset
// 设置内容的滚动范围 能滚多远
scrollView.contentSize = CGSize(width: 600, height: 200)
// 四周增加额外的滚动区域,一般用来避免scrollView的内容被其他控件挡住
scrollView.contentInset = UIEdgeInsetsMake(20, 20, 20, 20)
// 控制垂直方向遇到边框是否反弹
scrollView.alwaysBounceVertical = true
// 控制水平方向遇到边框是否反弹
scrollView.alwaysBounceHorizontal = true
// 是否显示水平滚动条
scrollView.showsHorizontalScrollIndicator = false
// 是否显示垂直滚动条
scrollView.showsVerticalScrollIndicator = false
// 是否以每页的形式进行更换
scrollView.isPagingEnabled = true
// 是否可以滚动
scrollView.isScrollEnabled = true
// 指定控件是否只能在一个方向上滚动
scrollView.isDirectionalLockEnabled = false
// 控制控件遇到边框是否反弹
scrollView.bounces = false
// 指定滚动条在scrollerView中的位置
scrollView.scrollIndicatorInsets = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0)
// 设置滚动条的样式
scrollView.indicatorStyle = UIScrollViewIndicatorStyle.default
// 改变scrollerView的减速点位置
scrollView.decelerationRate = 10
// 缩小的最小比例
scrollView.minimumZoomScale = 0
// 放大的最大比例
scrollView.maximumZoomScale = 5
// 控制控件滚动到顶部
scrollView.scrollsToTop = true
// 设置代理
scrollView.delegate = self
self.view.addSubview(scrollView)
- 代理方法
// 1、已经开始滚动(不管是拖、拉、放大、缩小等导致)都会执行此函数
func scrollViewDidScroll(_ scrollView: UIScrollView) {
}
// 2、将要开始拖拽,手指已经放在view上并准备拖动的那一刻
func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
}
// 3、将要结束拖拽,手指已拖动过view并准备离开手指的那一刻,注意:当属性isPagingEnabled为YES时,此函数不被调用
func scrollViewWillEndDragging(_ scrollView: UIScrollView, withVelocity velocity: CGPoint, targetContentOffset: UnsafeMutablePointer<CGPoint>) {
}
// 4、已经结束拖拽,手指刚离开view的那一刻
func scrollViewDidEndDragging(_ scrollView: UIScrollView, willDecelerate decelerate: Bool) {
}
// 5、view将要开始减速,view滑动之后有惯性
func scrollViewWillBeginDecelerating(_ scrollView: UIScrollView) {
}
// 6、view已经停止滚动
func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
}
// 7、view的缩放
func scrollViewDidZoom(_ scrollView: UIScrollView) {
}
// 8、有动画时调用
func scrollViewDidEndScrollingAnimation(_ scrollView: UIScrollView) {
}
网友评论