Programmatically Linking UIPageControl to UIScrollView

后端 未结 5 1696
一生所求
一生所求 2020-12-07 13:41

I am making a simple slideshow view within my app. I\'d like to link my UIPageControl to my UIScrollView. This shouldn\'t be too difficult, but I haven\'t been able to fin

5条回答
  •  情话喂你
    2020-12-07 14:09

    Following code will work for Swift:

    func addScrollView() {        
        let scrollView = UIScrollView(frame: CGRect(x: 0, y: 0, width: 200, height: 200))
        let numberOfPages: CGFloat = 4
        scrollView.contentSize = CGSize(width: scrollView.frame.width * numberOfPages, height: scrollView.frame.height * numberOfPages)
        scrollView.delegate = self
        scrollView.isPagingEnabled = true
    
        let pageControl = UIPageControl(frame: CGRect(x: 0, y: scrollView.frame.height - 37, width: scrollView.frame.width, height: 37))
        pageControl.numberOfPages = Int(numberOfPages)
        pageControl.currentPage = 0
    }
    
    func scrollViewDidScroll(_ scrollView: UIScrollView) {
        let value = scrollView.contentOffset.x / scrollView.frame.size.width
        pageControl.currentPage = Int(round(value))
    }
    

提交回复
热议问题