CHIPageControl alternatives and similar libraries
Based on the "Pagination" category.
Alternatively, view CHIPageControl alternatives based on common mentions on social networks and blogs.
-
PageControls
This is a selection of custom page controls to replace UIPageControl, inspired by a dribbble found here: https://dribbble.com/shots/2578447-Page-Control-Indicator-Transitions-Collection -
FlexiblePageControl
A flexible UIPageControl like Instagram. -
SlideController
Swipe between pages with an interactive title navigation control. Configure horizontal or vertical chains for unlimited pages amount.
Appwrite - The Open Source Firebase alternative introduces iOS support
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of CHIPageControl or a related project?
README
CHIPageControl
CHIPageControl is a set of cool animated page controls to replace boring UIPageControl. We were inspired by Jardson Almeida dribbble shot and implemented a few more page controls.
Made with โค๏ธ by Chili Labs.
Overview
Requirements
- iOS 8.0+
- Xcode 8+
- Swift 3
Installation
Manually
Just add the CHIPageControl
folder to your project.
CocoaPods
use CocoaPods with Podfile:
pod 'CHIPageControl', '~> 0.1.3'
# individual page control
pod 'CHIPageControl/Aji'
pod 'CHIPageControl/Aleppo'
pod 'CHIPageControl/Chimayo'
pod 'CHIPageControl/Fresno'
pod 'CHIPageControl/Jalapeno'
pod 'CHIPageControl/Jaloro'
pod 'CHIPageControl/Paprika'
pod 'CHIPageControl/Puya'
Carthage
use Carthage with Cartfile
github "ChiliLabs/CHIPageControl" ~> 0.1.3
Swift Package Manager
The Swift Package Manager is a tool for managing the distribution of Swift code.
Add the following to your Package.swift
file:
dependencies: [
.package(url: "https://github.com/ChiliLabs/CHIPageControl.git", .branch("master"))
]
And then build your project
$ swift build
Usage
๐จ Storyboards
Just drop UIView and set its class to be one of CHIPageControls.
๐ป Code
let pageControl = CHIPageControlAji(frame: CGRect(x: 0, y:0, width: 100, height: 20))
pageControl.numberOfPages = 4
pageControl.radius = 4
pageControl.tintColor = .red
pageControl.currentPageTintColor = .green
pageControl.padding = 6
Adding multiple tintColors
// The size of the array needs to match the numberOfPages or it will throw an fatal error
pageControl.tintColors = [UIColor.black, UIColor.yellow, UIColor.black, UIColor.black]
// or
// If it is the first one, it will fill all colors with the selected tintColor and then replace the colors with the desired one
pageControl.insertTintColor(UIColor.yellow, position: 1)
Updating progress
//update dynamically
pageControl.progress = 0.5
//set progress with animation
pageControl.set(progress: 2, animated: true)
Touch events
You can hear touch events in any of the page indicators.
pageControl.enableTouchEvents = true
Delegate
Implement the CHIBasePageControlDelegate
to catch touch events.
func didTouch(pager: CHIBasePageControl, index: Int)
Page Controls ๐ถ๏ธ๐ถ๏ธ๐ถ๏ธ
CHIPageControlAji
CHIPageControlAleppo
CHIPageControlChimayo
CHIPageControlFresno
CHIPageControlJalapeno
CHIPageControlJaloro
CHIPageControlPaprika
CHIPageControlPuya
License
CHIPageControl is released under the MIT license. See [LICENSE](./LICENSE) for details.
*Note that all licence references and agreements mentioned in the CHIPageControl README section above
are relevant to that project's source code only.