SVProgressHUD控件使用

来源:互联网 发布:牛听听网络配置出错 6 编辑:程序博客网 时间:2024/06/06 07:40

本文转载于:SVProgressHUD
GitHub:https://github.com/samvermette/SVProgressHUD
SVProgressHUD和MBProgressHUD效果差不多,不过不需要使用协议,同时也不需要声明实例。
直接通过类方法进行调用即可:

[SVProgressHUD method]

可以使用以下方法来显示状态:

+ (void)show;+ (void)showWithMaskType:(SVProgressHUDMaskType)maskType;+ (void)showWithStatus:(NSString*)string;+ (void)showWithStatus:(NSString*)string maskType:(SVProgressHUDMaskType)maskType;

如果需要明确的进度,则使用以下方法:

+ (void)showProgress:(CGFloat)progress;+ (void)showProgress:(CGFloat)progress status:(NSString*)status;+ (void)showProgress:(CGFloat)progress status:(NSString*)status maskType:(SVProgressHUDMaskType)maskType;

通过dismiss方法来隐藏提示:

+ (void)dismiss;

另外提供了以下方法用于显示状态,并在1秒后自动隐藏提示(使用的图标来源于Glyphish:http://www.glyphish.com/):

+ (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
0 0