{"id":2982,"url":"https://github.com/sevruk-dev/page-control","last_synced_at":"2025-08-03T12:31:45.547Z","repository":{"id":56915542,"uuid":"155138481","full_name":"sevruk-dev/page-control","owner":"sevruk-dev","description":"💥 Beautiful, animated and highly customizable UIPageControl alternative for iOS.","archived":false,"fork":false,"pushed_at":"2019-07-02T05:10:23.000Z","size":5429,"stargazers_count":32,"open_issues_count":2,"forks_count":4,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-12-02T00:02:15.558Z","etag":null,"topics":["ios","library","material-design","swift","ui"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sevruk-dev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-10-29T02:14:08.000Z","updated_at":"2024-02-05T16:06:17.000Z","dependencies_parsed_at":"2022-08-21T03:50:37.457Z","dependency_job_id":null,"html_url":"https://github.com/sevruk-dev/page-control","commit_stats":null,"previous_names":["insiderdev/page-control"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sevruk-dev%2Fpage-control","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sevruk-dev%2Fpage-control/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sevruk-dev%2Fpage-control/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sevruk-dev%2Fpage-control/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sevruk-dev","download_url":"https://codeload.github.com/sevruk-dev/page-control/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228543234,"owners_count":17934449,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ios","library","material-design","swift","ui"],"created_at":"2024-01-05T20:16:28.093Z","updated_at":"2024-12-07T00:31:09.630Z","avatar_url":"https://github.com/sevruk-dev.png","language":"Swift","readme":"# PageControl\n[![CocoaPods](https://img.shields.io/cocoapods/p/Sevruk-PageControl.svg)](https://cocoapods.org/pods/Sevruk-PageControl)\n[![CocoaPods](https://img.shields.io/cocoapods/v/Sevruk-PageControl.svg)](http://cocoapods.org/pods/Sevruk-PageControl)\n[![Swift 4.0](https://img.shields.io/badge/Swift-4.0-green.svg?style=flat)](https://developer.apple.com/swift/)\n\u003cimg align=\"right\" src=\"https://github.com/insiderdev/page-control/blob/master/tutorial-resources/demonstration.gif\" width=356, height=670/\u003e\n\u003c/a\u003e\n\n## Requirements\n- iOS 9.0+\n- Xcode 7.0+\n\n## Installation\n\n[CocoaPods](https://cocoapods.org):\n\nAdd folowing line to Podfile and run 'pod instal'.\n```\npod 'Sevruk-PageControl'\n``` \n\nOr just drag and drop FoldingCell.swift file to your project\n\n## Usage with storyboard\n1) Add a new UIView to storyboard.\n\n2) Inherit view from `PageControl`.\n\n![1.1](https://raw.githubusercontent.com/insiderdev/page-control/master/tutorial-resources/1.1.png)\n\n3) In view controller create an outlet to a view from storyboard and you're ready to go.\n\n![1.2](https://raw.githubusercontent.com/insiderdev/page-control/master/tutorial-resources/1.2.png)\n\nHere is code example that uses UIScrollView.\n\n``` swift\nimport UIKit\nimport PageControl\n\nclass ViewController: UIViewController, UIScrollViewDelegate {\n    \n    @IBOutlet weak var scrollView: UIScrollView!\n    @IBOutlet weak var pageControl: PageControl!\n\n    override func viewDidLoad() {\n        super.viewDidLoad()\n        scrollView.delegate = self\n        pageControl.numberOfPages = Int(scrollView.contentSize.width / scrollView.bounds.width)\n    }\n\n    func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {\n        let page = scrollView.contentOffset.x / scrollView.bounds.width\n        pageControl.currentPage = page\n    }\n}\n```\n\n## Usage without storyboard\n\n1) Create a PageControl view and add it to your view hierarchy. \n``` swift\nlet pageControl = PageControl()\naddSubview(pageControl)\n```\n\n2) Setup pageControl with your needs.\n``` swift\npageControl.numberOfPages = 5\npageControl.spacing = 14.0\npageControl.indicatorDiameter = 8.0\npageControl.currentIndicatorDiameter = 12.0\npageControl.indicatorTintColor = .darkGray\npageControl.currentIndicatorTintColor = .green\n```\n\n3) And update current page when needed.\n``` swift\npageControl.currentPage = 1\n```\n\n## Contributing \nI'd love for you to contribute in PageControl. Feel free to submit your pull requests.\n\n## Author\n\nFeel free to contact me via linkedin [Vova Sevruk](https://www.linkedin.com/in/vova-sevruk-838b9210b/) or via email: vovaseuruk@gmail.com\n\n## Licence\n\nPageControl is released under the MIT license.\nSee [LICENSE](./LICENSE) for details.\n","funding_links":[],"categories":["UI"],"sub_categories":["UIPageControl"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsevruk-dev%2Fpage-control","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsevruk-dev%2Fpage-control","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsevruk-dev%2Fpage-control/lists"}