制作轮播图

2016-11-24  本文已影响0人  Grt婷

1.创建滚动视图(UIScrollView)

2.创建UIPageControl

3.创建Timer

4.添加滑动会执行的方法

func scrollViewDidScroll(_ scrollView: UIScrollView) {
     //获取偏移量
     let x = scr.contentOffset.x
     let width = self.view.frame.size.width
     //根据偏移量定位到第几个点
     if (x >= width * 4){
         self.page.currentPage = 0
     }else{
      page.currentPage = Int(x / width)
     }
}

5.添加开始拖拽、结束拖拽方法

//开始拖拽
 func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
     self.timer.invalidate()
     self.timer = nil
 }
 //结束拖拽
 func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
      self.timer=Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(timerAction), userInfo: nil, repeats: true)
     // 一秒之后再执行
     let time =  DispatchTime.now() + 1.0
     DispatchQueue.main.asyncAfter(deadline:time){
         if let _ = self.timer {
          self.timer.fire()
         }
     }
    
 }

6.效果图

四张图会自动播放


上一篇 下一篇

猜你喜欢

热点阅读