- December 30, 2024
- Mins Read
A custom animation for the UIRefreshControl. Inspired by this Dribble shot and this tutorial.
Install through CocoaPods
pod ‘GearRefreshControl’, ‘~> 1.0.0’
use_frameworks!
Setup your refreshControl
:
override func viewDidLoad() {
super.viewDidLoad()
gearRefreshControl = GearRefreshControl(frame: self.view.bounds)
gearRefreshControl.addTarget(self, action: #selector(ViewController.refresh), for: UIControlEvents.valueChanged)
self.refreshControl = gearRefreshControl
}
Update state:
override func scrollViewDidScroll(_ scrollView: UIScrollView) {
gearRefreshControl.scrollViewDidScroll(scrollView)
}
Stop the animation on completion:
self.gearRefreshControl.endRefreshing()
You can customize the color of the control by setting the gearTintColor
property:
gearRefreshControl.gearTintColor = .red
Checkout the sample project for the full implementation.