转载自:http://cht005288201307234627.iteye.com/blog/1927961
GitHub:https://github.com/samvermette/SVProgressHUD
SVProgressHUD和MBProgressHUD效果差不多,不过不需要使用协议,同时也不需要声明实例。
直接通过类方法进行调用即可:
1 | [SVProgressHUD method] |
可以使用以下方法来显示状态:
1 2 3 4 | + (void)show; + (void)showWithMaskType:(SVProgressHUDMaskType)maskType; + (void)showWithStatus:(NSString*)string; + (void)showWithStatus:(NSString*)string maskType:(SVProgressHUDMaskType)maskType; |
如果需要明确的进度,则使用以下方法:
1 2 3 | + (void)showProgress:(CGFloat)progress; + (void)showProgress:(CGFloat)progress status:(NSString*)status; + (void)showProgress:(CGFloat)progress status:(NSString*)status maskType:(SVProgressHUDMaskType)maskType; |
通过dismiss方法来隐藏提示:
1 | + (void)dismiss; |
另外提供了以下方法用于显示状态,并在1秒后自动隐藏提示(使用的图标来源于Glyphish:http://www.glyphish.com/):
1 2 3 | + (void)showSuccessWithStatus:(NSString*)string; + (void)showErrorWithStatus:(NSString *)string; + (void)showImage:(UIImage*)image status:(NSString*)string;// use 28x28 white pngs |
- #import "ViewController.h"
- #import <SVProgressHUD/SVProgressHUD.h>
- @interface ViewController ()
- @end
- @implementation ViewController
- - (void)viewDidLoad
- {
- [super viewDidLoad];
- }
- - (void)didReceiveMemoryWarning
- {
- [super didReceiveMemoryWarning];
- }
- - (IBAction)show:(id)sender {
- // [SVProgressHUD show];
- //SVProgressHUDMaskType 设置显示的样式
- [SVProgressHUD showWithMaskType:SVProgressHUDMaskTypeBlack];
- [self performSelector:@selector(dismiss:) withObject:nil afterDelay:3];
- }
- - (IBAction)showText:(id)sender {
- [SVProgressHUD showWithStatus:@"加载中,请稍后。。。"];
- [self performSelector:@selector(dismiss:) withObject:nil afterDelay:3];
- }
- - (IBAction)showprogress:(id)sender {
- [SVProgressHUD showProgress:0 status:@"加载中"];
- [self performSelector:@selector(increateProgress) withObject:nil afterDelay:0.3];
- }
- static float progressValue = 0.0f;
- - (void)increateProgress
- {
- progressValue += 0.1;
- [SVProgressHUD showProgress:progressValue status:@"加载中"];
- if (progressValue < 1) {
- [self performSelector:@selector(increateProgress) withObject:nil afterDelay:0.3];
- }else{
- [self performSelector:@selector(dismiss:) withObject:nil afterDelay:0.4];
- }
- }
- - (IBAction)dismiss:(id)sender {
- [SVProgressHUD dismiss];
- }
- - (IBAction)showSuccess:(id)sender {
- [SVProgressHUD showSuccessWithStatus:@"success"];
- [self performSelector:@selector(dismiss:) withObject:nil afterDelay:3];
- }
- - (IBAction)showError:(id)sender {
- [SVProgressHUD showErrorWithStatus:@"error"];
- [self performSelector:@selector(dismiss:) withObject:nil afterDelay:3];
- }
- @end