美文网首页SwiftiOS 开发 iOS Developer
IOS Swift 3.0 UIScrollView 常用设置

IOS Swift 3.0 UIScrollView 常用设置

作者: 抬头触摸那yi抹阳光 | 来源:发表于2016-10-09 15:13 被阅读1904次

今天我们讲讲 UIScrollView 的设置 。 还是那句老话: 新手学习 、大神略过。

  1. UIScrollView 的定义
   var scrollView = UIScrollView()
  1. 常用属性设置
 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. 代理方法
    // 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) {
        
    }

相关文章

网友评论

  • chanzd:swift 3.0 代理怎么签啊 我签协议 他就告诉我这个类不能签署这个协议:joy:
    chanzd:@抬头触摸那yi抹阳光 类 冒号后面的协议 签就错 我用的xcode-8-beta
    抬头触摸那yi抹阳光:@chanzd delegate?

本文标题:IOS Swift 3.0 UIScrollView 常用设置

本文链接:https://www.haomeiwen.com/subject/cvnpyttx.html