Popularity
1.1
Declining
Activity
0.0
Stable
28
3
3

Programming language: Swift
License: MIT License
Tags: UI     UIPageControl    
Latest version: v1.0.0
Add another 'UIPageControl' Library

README

PageControl

CocoaPods CocoaPods Swift 4.0

Requirements

  • iOS 9.0+
  • Xcode 7.0+

Installation

CocoaPods:

Add folowing line to Podfile and run 'pod instal'.

pod 'Sevruk-PageControl'

Or just drag and drop FoldingCell.swift file to your project

Usage with storyboard

1) Add a new UIView to storyboard.

2) Inherit view from PageControl.

1.1

3) In view controller create an outlet to a view from storyboard and you're ready to go.

1.2

Here is code example that uses UIScrollView.

import UIKit
import PageControl

class ViewController: UIViewController, UIScrollViewDelegate {

    @IBOutlet weak var scrollView: UIScrollView!
    @IBOutlet weak var pageControl: PageControl!

    override func viewDidLoad() {
        super.viewDidLoad()
        scrollView.delegate = self
        pageControl.numberOfPages = Int(scrollView.contentSize.width / scrollView.bounds.width)
    }

    func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
        let page = scrollView.contentOffset.x / scrollView.bounds.width
        pageControl.currentPage = page
    }
}

Usage without storyboard

1) Create a PageControl view and add it to your view hierarchy.

let pageControl = PageControl()
addSubview(pageControl)

2) Setup pageControl with your needs.

pageControl.numberOfPages = 5
pageControl.spacing = 14.0
pageControl.indicatorDiameter = 8.0
pageControl.currentIndicatorDiameter = 12.0
pageControl.indicatorTintColor = .darkGray
pageControl.currentIndicatorTintColor = .green

3) And update current page when needed.

pageControl.currentPage = 1

Contributing

I'd love for you to contribute in PageControl. Feel free to submit your pull requests.

Author

Feel free to contact me via linkedin Vova Sevruk or via email: [email protected]

Licence

PageControl is released under the MIT license. See [LICENSE](./LICENSE) for details.


*Note that all licence references and agreements mentioned in the Page-Control README section above are relevant to that project's source code only.