Simple but powerful and modern progress HUD for iOS.
#####Current Version: 1.0.4
####There already are so many other open source progress HUD components! While other progress HUD components are nice they all have their problems. MBProgressHUD is outdated and buggy, MMProgressHUD is totally over engineered and requires a long time to implement, SVProgressHUD and HTProgressHUD are not implemented in the right way and they all don't offer the extensibility of JGProgressHUD. JGProgressHUD was inspired by all of these components to create the ideal progress indicator.
Here comes JGProgressHUD:
• Super simple to implement
• Feature rich
• Easy extensibility and customization (custom animations and progress indicators)
• Up to date, ex. using a blurred view on iOS 8
• Backwards compatibility to iOS 5
• Well documented
• Detects and repositions when Keyboards appear/disappear
• And most importantly, it looks good!
###Styles:
JGProgressHUD can be displayed in 3 styles:
• Extra Light
• Light
• Dark
###Progress and Status Indicators:
By default a HUD will display an indeterminate progress indicator. The progress indicator can be completely removed or a different progress indicator can be assigned to the HUD. By default there are the following indicators built in:
• Indeterminate progress indicator
• Pie progress indicator
• Ring progress indicator
By subclassing JGProgressHUDIndicatorView
you can create a custom indicator view!
The JGProgressHUD Tests project contains example implementations for:
• Success indicator
• Error indicator
###Animations:
By default a HUD will use a fade animation. Several parameters can be altered such as animation duration or animation curve. A HUD can be displayed without animation and different animations can be used. By default there are the following animations built in:
• Fade
• Zoom and Fade
By subclassing JGProgressHUDAnimation
you can create a custom animation!
To dim the content behind the HUD set your dim color as backgroundColor
of your JGProgressHUD
instance.
• iOS 5 or higher
• ARC
Each header file contains detailed documentation for each method call. To start, see JGProgressHUD.h.
#####Simple example:
JGProgressHUD *HUD = [JGProgressHUD progressHUDWithStyle:JGProgressHUDStyleDark];
HUD.textLabel.text = @"Loading";
[HUD showInView:self.view];
[HUD dismissAfterDelay:3.0];
This displays a dark HUD with a spinner and the title "Loading", it is presented with a fade animation and is dismissed after 3 seconds with a fade animation.
Note: You should preferably show the HUD in a UIViewController's view.
See the JGProgressHUD Tests project for more example implementations.
CocoaPods:
Add this to your Podfile
:
pod 'JGProgressHUD'
OR:
As static library:
Ideally you should use JGProgressHUD as a static library:
Drag the JGProgressHUD.xcodeproj file into your Xcode project. Next add JGProgressHUD as Target Dependency in your project's Build Phases. Then add libJGProgressHUD.a in "Link Binary With Libraries". Finally, make sure you have set the `-ObjC` flag in Other Linker Flags.
See the JGProgressHUD Tests project for an example implementation of JGProgressHUD as static library.
OR:
Using source files:
Add all files from JGProgressHUD apart from the `JGProgressHUD-Prefix.pch` file to your project.
After you have included JGProgressHUD as static library or source files simply import `JGProgressHUD.h`.
MIT License.
©2014 Jonas Gessner.
Created by Jonas Gessner © 2014.
Inspired by HTProgressHUD and other open source progress HUD components.