Skip to content

ManyLattice/FlexiblePageControl

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FlexiblePageControl

A flexible UIPageControl like Instagram.

Carthage compatible Swift 4.2.x Support

OverView

Install

Swift Package Manager

https://github.com/ManyLattice/FlexiblePageControl (master)

Usage

let pageControl = FlexiblePageControl()
pageControl.numberOfPages = 10
view.addSubview(pageControl)

Customize

// color
pageControl.pageIndicatorTintColor = color1
pageControl.currentPageIndicatorTintColor = color2

// size
let config = FlexiblePageControl.Config(
    displayCount: 7,
    dotSize: 6,
    dotSpace: 4,
    smallDotSizeRatio: 0.5,
    mediumDotSizeRatio: 0.7
)

pageControl.setConfig(config)

Update page

func scrollViewDidScroll(_ scrollView: UIScrollView) {
    pageControl.setProgress(contentOffsetX: scrollView.contentOffset.x, pageWidth: scrollView.bounds.width)
}

or

pageControl.setCurrentPage(at: page)

Licence

Licence MIT

About

A flexible UIPageControl like Instagram.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Swift 100.0%