iOS:MBProgressHUD的基本使用
下载地址: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
iOS:MBProgressHUD的基本使用相关推荐
- iOS MBProgressHUD 之带底板的加载提示
文章来自:http://blog.csdn.net/ryantang03/article/details/7877120 MBProgressHUD是一个开源项目,实现了很多种样式的提示框,使用上简单 ...
- (0045) iOS 开发之MBProgressHUD 源码学习
(0045) iOS 开发之MBProgressHUD 源码学习 第一部分:学习所得和分析线程 1. 学习到了kvo 的使用 和屏幕方向的旋转判断. 2. 如果调起这个 HUD 的方法不是在主线程调 ...
- 【转】提示框第三方库之MBProgressHUD iOS toast效果 动态提示框效果
原文网址:http://www.zhimengzhe.com/IOSkaifa/37910.html MBProgressHUD是一个开源项目,实现了很多种样式的提示框,使用上简单.方便,并且可以对显 ...
- IOS中关于MBProgressHUD的使用
IOS中关于MBProgressHUD的使用 pod 输入 pod 'MBProgressHUD' 头文件#import <MBProgressHUD/MBProgressHUD.h> M ...
- iOS开发——MBProgressHUD 与 SVProgressHUD iOS提示框的优缺点
本文通过剖析MBProgressHUD 与 SVProgressHUD两个iOS提示框的优缺点,帮助初学者了解什么是iOS提示框,以及如何选择一个合适的提示框.现在整理出来分享给广大的iOS程序员兄弟 ...
- 开源中国iOS客户端学习——(七)MBProgressHUD特效
在开源中国iOS客户端中也用到了MBProgressHUD这个特效,主要作用为应用显示一个过渡的作用,常用于打开一个联网页面加载过程,防止出现假死现象,如果网速慢则告诉用户已经在很努力很努力的加载中. ...
- iOS学习笔记--01swift实现提示框第三方库:MBProgressHUD
本文使用swift语言使用MBProgressHUD. 开源项目MBProgressHUD可以实现多种形式的提示框.使用简单,方便. GitHud的下载地址是:https://github.com/j ...
- Day2 : iOS第三方框架MBProgressHUD学习笔记
今天主要学习了MBProgressHUD,受益匪浅.MB实现了弹出提示,可以很快捷的集成到项目中去.不得不说,得益于GitHub上丰富的开源第三方框架,开发工作变得非常的简便,优雅. 1.可以在弹出提 ...
- IOS开发UI篇之──自定义加载等待框(MBProgressHUD)
这里介绍一下网友开源的MBProgressHUD类,实现等待框, 一.网上下载 MBProgessHUD 类文件,直接导入到工程即可 二.示例分析 在我的工程中示例如下: 1)在ShowImageV ...
最新文章
- linux文件IO与内存映射:用户空间的IO缓冲区
- 近两年的生物医学突破研究,颠覆你前20年基础所学
- file not in the prep project
- python核心装饰_Python核心编程 | 装饰器
- 电气期刊论文实现:考虑爬坡约束和输电损耗的经济调度【有代码】
- 20169207《Linux内核原理与分析》第五周作业
- 用赫夫曼树进行文件解压
- java 方法的拆分_java – 字符串拆分和比较 – 最快的方法
- Exception: SQLSTATE[22001]
- pandas 读取某一单元格的值_一个参数一个Excel表,让你玩转Pandas中read_excel()表格读取!...
- JS在HTML中放的位置
- 江苏教师计算机考试报名时间2015下半年,2021年江苏教师资格证报名时间入口-报考条件-面试报名-233网校...
- 小管家进销存_36氪首发 | 进销存SaaS提供商 「来肯云商」 获数百万美金A轮融资,要做“ERP+微商城 ”的一体化产品...
- Mac-删除自带 ABC 输入法的方法
- dz中footer.php在哪找,dz模版制作教程
- directive之require
- U大师U盘装系统——启动U盘制作(V1.2.0版)
- 2023年湖北一级技师二级技师报名时间、考试时间是什么时候?
- mysql on是什么意思_这SQL语句里的ON 是什么意思啊
- 深度学习(12):SemanticKITTI论文翻译与学习
热门文章
- 第三方类AFNetworking
- Skycc营销软件,使我人生越走越精彩
- ios NSString 正则表达式 其它字符
- Web应用漏洞评估工具Paros
- C#开发Unity游戏教程循环遍历做出判断及Unity游戏示例
- mysql双数据源动态切换_Spring boot+Mybatis多数据源动态切换
- java 短路判断_随笔 | 奇淫技巧 | Java:记 return 和短路运算符的妙用
- delphi 实现屏幕旋转代码_X86指令混淆之函数分析和代码块粉碎
- iOS 访问权限设置
- php jq ajax 4个下拉框联动案列,Ajax与Jquery结合数据库做出实现下拉框的二级联动...