SnapTimer alternatives and similar libraries
Based on the "Activity Indicator" category.
Alternatively, view SnapTimer alternatives based on common mentions on social networks and blogs.
-
SkeletonView
☠️ An elegant way to show users that something is happening and also prepare them to which contents they are awaiting -
SwiftSpinner
A beautiful activity indicator and modal alert written in Swift (originally developed for my app DoodleDoodle) Using blur effects, translucency, flat and bold design - all iOS 8 latest and greatest -
FillableLoaders
Completely customizable progress based loaders drawn using custom CGPaths written in Swift -
YLProgressBar
UIProgressView replacement with an highly and fully customizable animated progress bar in pure Core Graphics -
MBCircularProgressBar
A circular, animatable & highly customizable progress bar from the Interface Builder (Objective-C) -
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 -
StackViewController
A controller that uses a UIStackView and view controller composition to display content in a list -
AlamofireNetworkActivityIndicator
Controls the visibility of the network activity indicator on iOS using Alamofire. -
Skeleton
✨ An easy way to create sliding CAGradientLayer animations! Works great for creating skeleton screens for loading content. -
BigBrother
DISCONTINUED. Automatically sets the network activity indicator for any performed request. -
StepProgressView
Step-by-step progress view with labels and shapes. A good replacement for UIActivityIndicatorView and UIProgressView. -
IHProgressHUD
A clean and lightweight progress HUD based on SVProgressHUD, converted to Swift with the help of Swiftify. -
AudioIndicatorBars
DISCONTINUED. AIB indicates for your app users which audio is playing. Just like the Podcasts app. -
KYNavigationProgress
Simple extension of UINavigationController to display progress on the UINavigationBar. -
StatusBarOverlay
StatusBarOverlay will automatically show a "No Internet Connection" bar when your app loses connection, and hide it again. It supports apps which hide the status bar and The Notch
CodeRabbit: AI Code Reviews for Developers

* 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 SnapTimer or a related project?
README
[SnapTimer](images/snaptimer-logo.png)
SnapTimer
SnapTimer is a custom UIView that behaves exactly the same as the one on Snapchat's stories.
Swift 3.0 Support on master branch! 👌👌
Swift 2.3 Support on Swift2.3.
Features
- Two different timers, 'outer' and 'inner'.
- Independent animations for each of the timers.
- Customizable colors.
- Completion handlers.
- Fully Swift.
What does it look like?
A picture is worth a thousand words
[samples](images/sample-timers.png)
Installation
You can just clone the repo and copy the SnapTimer
folder to your project or you can use one of the following options:
Setting up with CocoaPods
pod 'SnapTimer'
Then:
import SnapTimer
And you are all set!
Setting up with Carthage
- TODO
How do I add it?
- Add a
UIView
to your Storyboard. Select the view, go to the
Identity Inspector
and set the class toSnapTimerView
[identity-inspector](images/identity-inspector.png)
Create an
@IBOutlet
in your view controller and that's it.SnapTimerView
implements@IBDesignable
so the view should automatically render in your Interface Builder. Also it implements@IBInspectable
for the view properties:
[properties](images/properties.png)
- That's it!
Setting inner and outer values
innerValue and outerValue ranges go from 0 to 100.
To set values without animations you just have to:
self.snapTimerView.outerValue = 25 self.snapTimerView.innerValue = 50
[ej1](images/ej1.gif)
To animate values:
self.snapTimerView.animateOuterValue(50) self.snapTimerView.animateInnerValue(25)
[ej1](images/ej2.gif)
To animate values setting the time and a completion handler:
self.snapTimerView.animateOuterToValue(50, duration: 30) {
puts("Done!")
}
self.snapTimerView.animateInnerToValue(100, duration: 30) {
puts("Done!")
}
Pausing and resuming animations:
if your app goes to background or the Notifications/Control center are opened you may want to pause the animations, to do that SnapTimer has two handy methods:
self.snapTimerView.resumeAnimation()
self.snapTimerView.pauseAnimation()
Check the sample project!
[samples](images/ej3.gif)
Cool ways to improve it?
Hey, If you have cool ideas to add to this please feel free to send a PR! Also if you are using this in your app and what to let me know I'll be happy to add a section here with the apps currently using this!