下载地址:https://github.com/jdg/MBProgressHUD/

//方式1.直接在View上show
HUD = [[MBProgressHUD showHUDAddedTo:self.view animated:YES] retain];
HUD.delegate = self;  //常用的设置
//小矩形的背景色
HUD.color = [UIColor clearColor];//这儿表示无背景
//显示的文字
HUD.labelText = @"Test";
//细节文字
HUD.detailsLabelText = @"Test detail";
//是否有庶罩
HUD.dimBackground = YES;
[HUD hide:YES afterDelay:2];  //只显示文字
MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES];
hud.mode = MBProgressHUDModeText;
hud.labelText = @"Some message...";
hud.margin = 10.f;
hud.yOffset = 150.f;
hud.removeFromSuperViewOnHide = YES;
[hud hide:YES afterDelay:3];  //方式2.initWithView
//use block
HUD = [[MBProgressHUD alloc] initWithView:self.view];
[self.view addSubview:HUD];
HUD.labelText = @"Test";
[HUD showAnimated:YES whileExecutingBlock:^{  NSLog(@"%@",@"do somethings....");  [self doTask];
} completionBlock:^{  [HUD removeFromSuperview];  [HUD release];
}];  //圆形进度条
HUD = [[MBProgressHUD alloc] initWithView:self.view];
[self.view addSubview:HUD];
HUD.mode = MBProgressHUDModeAnnularDeterminate;
HUD.delegate = self;
HUD.labelText = @"Loading";
[HUD showWhileExecuting:@selector(myProgressTask) onTarget:self withObject:nil animated:YES];  //自定义view
HUD = [[MBProgressHUD alloc] initWithView:self.view];
HUD.customView = [[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"37x-Checkmark.png"]] autorelease];
// Set custom view mode
HUD.mode = MBProgressHUDModeCustomView;
HUD.delegate = self;
HUD.labelText = @"Completed";
[HUD show:YES];
[HUD hide:YES afterDelay:3];  

代理方法:

#pragma mark -
#pragma mark HUD的代理方法,关闭HUD时执行
-(void)hudWasHidden:(MBProgressHUD *)hud
{  [hud removeFromSuperview];  [hud release];  hud = nil;
}  

二个task

 -(void) doTask{  //你要进行的一些逻辑操作  sleep(2);  }  -(void) myProgressTask{  float progress = 0.0f;
while (progress < 1.0f) {  progress += 0.01f;  HUD.progress = progress;  usleep(50000);
}  } 

注意: 其实,第三方库都是开源的,我们可以在其基础上添加另外自己需要的功能,如果觉得上面显示文字代码太不好用,可以添加一个分类,对它设置文字的方法再次封装如下所示:

添加一个分类:MBProgressHUD+XYQ

MBProgressHUD+XYQ.h文件:

#import "MBProgressHUD"@interface MBProgressHUD (XYQ)
+ (void)showSuccess:(NSString *)success toView:(UIView *)view;
+ (void)showError:(NSString *)error toView:(UIView *)view;+ (MBProgressHUD *)showMessage:(NSString *)message toView:(UIView *)view;+ (void)showSuccess:(NSString *)success;
+ (void)showError:(NSString *)error;+ (MBProgressHUD *)showMessage:(NSString *)message;+ (void)hideHUDForView:(UIView *)view;
+ (void)hideHUD;@end

MBProgressHUD+XYQ.m文件:

#import "MBProgressHUD+XYQ.h"@implementation MBProgressHUD (XYQ)
#pragma mark 显示信息
+ (void)show:(NSString *)text icon:(NSString *)icon view:(UIView *)view
{if (view == nil) view = [[UIApplication sharedApplication].windows lastObject];// 快速显示一个提示信息MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:view animated:YES];hud.labelText = text;// 设置图片hud.customView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:[NSString stringWithFormat:@"MBProgressHUD.bundle/%@", icon]]];// 再设置模式hud.mode = MBProgressHUDModeCustomView;// 隐藏时候从父控件中移除hud.removeFromSuperViewOnHide = YES;// 1秒之后再消失[hud hide:YES afterDelay:1.2];
}#pragma mark 显示错误信息
+ (void)showError:(NSString *)error toView:(UIView *)view{[self show:error icon:@"error.png" view:view];
}+ (void)showSuccess:(NSString *)success toView:(UIView *)view
{[self show:success icon:@"success.png" view:view];
}#pragma mark 显示一些信息
+ (MBProgressHUD *)showMessage:(NSString *)message toView:(UIView *)view {if (view == nil) view = [[UIApplication sharedApplication].windows lastObject];// 快速显示一个提示信息MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:view animated:YES];hud.labelText = message;// 隐藏时候从父控件中移除hud.removeFromSuperViewOnHide = YES;// YES代表需要蒙版效果hud.dimBackground = YES;return hud;
}+ (void)showSuccess:(NSString *)success
{[self showSuccess:success toView:nil];
}+ (void)showError:(NSString *)error
{[self showError:error toView:nil];
}+ (MBProgressHUD *)showMessage:(NSString *)message
{return [self showMessage:message toView:nil];
}+ (void)hideHUDForView:(UIView *)view
{[self hideHUDForView:view animated:YES];
}+ (void)hideHUD
{[self hideHUDForView:nil];
}
@end

更详细的讲解请看该链接:http://blog.csdn.net/ryantang03/article/details/7877120

程序猿神奇的手,每时每刻,这双手都在改变着世界的交互方式!
本文转自当天真遇到现实博客园博客,原文链接:http://www.cnblogs.com/XYQ-208910/p/5138856.html,如需转载请自行联系原作者

iOS:MBProgressHUD的基本使用相关推荐

  1. iOS MBProgressHUD 之带底板的加载提示

    文章来自:http://blog.csdn.net/ryantang03/article/details/7877120 MBProgressHUD是一个开源项目,实现了很多种样式的提示框,使用上简单 ...

  2. (0045) iOS 开发之MBProgressHUD 源码学习

    (0045) iOS 开发之MBProgressHUD 源码学习 第一部分:学习所得和分析线程 1.  学习到了kvo 的使用 和屏幕方向的旋转判断. 2. 如果调起这个 HUD 的方法不是在主线程调 ...

  3. 【转】提示框第三方库之MBProgressHUD iOS toast效果 动态提示框效果

    原文网址:http://www.zhimengzhe.com/IOSkaifa/37910.html MBProgressHUD是一个开源项目,实现了很多种样式的提示框,使用上简单.方便,并且可以对显 ...

  4. IOS中关于MBProgressHUD的使用

    IOS中关于MBProgressHUD的使用 pod 输入 pod 'MBProgressHUD' 头文件#import <MBProgressHUD/MBProgressHUD.h> M ...

  5. iOS开发——MBProgressHUD 与 SVProgressHUD iOS提示框的优缺点

    本文通过剖析MBProgressHUD 与 SVProgressHUD两个iOS提示框的优缺点,帮助初学者了解什么是iOS提示框,以及如何选择一个合适的提示框.现在整理出来分享给广大的iOS程序员兄弟 ...

  6. 开源中国iOS客户端学习——(七)MBProgressHUD特效

    在开源中国iOS客户端中也用到了MBProgressHUD这个特效,主要作用为应用显示一个过渡的作用,常用于打开一个联网页面加载过程,防止出现假死现象,如果网速慢则告诉用户已经在很努力很努力的加载中. ...

  7. iOS学习笔记--01swift实现提示框第三方库:MBProgressHUD

    本文使用swift语言使用MBProgressHUD. 开源项目MBProgressHUD可以实现多种形式的提示框.使用简单,方便. GitHud的下载地址是:https://github.com/j ...

  8. Day2 : iOS第三方框架MBProgressHUD学习笔记

    今天主要学习了MBProgressHUD,受益匪浅.MB实现了弹出提示,可以很快捷的集成到项目中去.不得不说,得益于GitHub上丰富的开源第三方框架,开发工作变得非常的简便,优雅. 1.可以在弹出提 ...

  9. IOS开发UI篇之──自定义加载等待框(MBProgressHUD)

    这里介绍一下网友开源的MBProgressHUD类,实现等待框, 一.网上下载  MBProgessHUD 类文件,直接导入到工程即可 二.示例分析 在我的工程中示例如下: 1)在ShowImageV ...

最新文章

  1. linux文件IO与内存映射:用户空间的IO缓冲区
  2. 近两年的生物医学突破研究,颠覆你前20年基础所学
  3. file not in the prep project
  4. python核心装饰_Python核心编程 | 装饰器
  5. 电气期刊论文实现:考虑爬坡约束和输电损耗的经济调度【有代码】
  6. 20169207《Linux内核原理与分析》第五周作业
  7. 用赫夫曼树进行文件解压
  8. java 方法的拆分_java – 字符串拆分和比较 – 最快的方法
  9. Exception: SQLSTATE[22001]
  10. pandas 读取某一单元格的值_一个参数一个Excel表,让你玩转Pandas中read_excel()表格读取!...
  11. JS在HTML中放的位置
  12. 江苏教师计算机考试报名时间2015下半年,2021年江苏教师资格证报名时间入口-报考条件-面试报名-233网校...
  13. 小管家进销存_36氪首发 | 进销存SaaS提供商 「来肯云商」 获数百万美金A轮融资,要做“ERP+微商城 ”的一体化产品...
  14. Mac-删除自带 ABC 输入法的方法
  15. dz中footer.php在哪找,dz模版制作教程
  16. directive之require
  17. U大师U盘装系统——启动U盘制作(V1.2.0版)
  18. 2023年湖北一级技师二级技师报名时间、考试时间是什么时候?
  19. mysql on是什么意思_这SQL语句里的ON 是什么意思啊
  20. 深度学习(12):SemanticKITTI论文翻译与学习

热门文章

  1. 第三方类AFNetworking
  2. Skycc营销软件,使我人生越走越精彩
  3. ios NSString 正则表达式 其它字符
  4. Web应用漏洞评估工具Paros
  5. C#开发Unity游戏教程循环遍历做出判断及Unity游戏示例
  6. mysql双数据源动态切换_Spring boot+Mybatis多数据源动态切换
  7. java 短路判断_随笔 | 奇淫技巧 | Java:记 return 和短路运算符的妙用
  8. delphi 实现屏幕旋转代码_X86指令混淆之函数分析和代码块粉碎
  9. iOS 访问权限设置
  10. php jq ajax 4个下拉框联动案列,Ajax与Jquery结合数据库做出实现下拉框的二级联动...