40줄 UIScrollView의 간단한 튜토리얼 화면 샘플만 사용

9212 단어 SwiftiOS

프로그램이 처음 시작될 때 가로로 점프하는 보행형 튜토리얼 화면을 만드는 방법이다.
UIPage View Controller도 할 수 있지만, 나는 UIScrollView가 비교적 간단하고 간단하면 충분하다고 생각한다.
다양한 도서관도 있지만 만드는 게 편할 것 같아요.
다음 코드가 전부입니다.40줄 정도면 완성됩니다.
import UIKit

class ViewController: UIViewController, UIScrollViewDelegate {

    var scrollView: UIScrollView!
    var pageControll: UIPageControl!
    let pageNum = 4
    let pageColors:[Int:UIColor] = [1:UIColor.redColor(),2:UIColor.yellowColor(),3:UIColor.blueColor(),4:UIColor.greenColor()]

    override func viewDidLoad() {
        super.viewDidLoad()

        self.scrollView = UIScrollView(frame: self.view.bounds)
        self.scrollView.contentSize = CGSizeMake(self.view.bounds.width * CGFloat(pageNum), self.view.bounds.height)
        self.scrollView.pagingEnabled = true
        self.scrollView.showsHorizontalScrollIndicator = false
        self.scrollView.delegate = self;
        self.view.addSubview(self.scrollView)

        self.pageControll = UIPageControl(frame: CGRectMake(0, self.view.bounds.height-50, self.view.bounds.width, 50))
        self.pageControll.numberOfPages = pageNum
        self.pageControll.currentPage = 0
        self.view.addSubview(self.pageControll)

        for p in 1...pageNum {
            var v = UIView(frame: CGRectMake(self.view.bounds.width * CGFloat(p-1), 0, self.view.bounds.width, self.view.bounds.height))
            v.backgroundColor = self.pageColors[p]
            self.scrollView.addSubview(v)
        }
    }

    func scrollViewDidScroll(scrollView: UIScrollView) {
        var pageProgress = Double(scrollView.contentOffset.x / scrollView.bounds.width)
        self.pageControll.currentPage = Int(round(pageProgress))

    }
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }
}

좋은 웹페이지 즐겨찾기