分类: IOS2012-10-30 11:19 12047人阅读 评论(2) 收藏 举报

和gitHub上的Demo其实差不多,就是小整理了下,当备忘,想做复杂的效果可以参考MBProgressHUD在gitHub上的DEMO,写得也很清楚明了。

先下载MBProgressHUD.h和.m文件,拖入工程。地址:MBProgressHUD

以下是代码:(先在.h文件里定义 MBProgressHUD *HUD;)

  1. //方式1.直接在View上show
  2. HUD = [[MBProgressHUD showHUDAddedTo:self.view animated:YES] retain];
  3. HUD.delegate = self;
  4. //常用的设置
  5. //小矩形的背景色
  6. HUD.color = [UIColor clearColor];//这儿表示无背景
  7. //显示的文字
  8. HUD.labelText = @"Test";
  9. //细节文字
  10. HUD.detailsLabelText = @"Test detail";
  11. //是否有庶罩
  12. HUD.dimBackground = YES;
  13. [HUD hide:YES afterDelay:2];
  14. //只显示文字
  15. MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES];
  16. hud.mode = MBProgressHUDModeText;
  17. hud.labelText = @"Some message...";
  18. hud.margin = 10.f;
  19. hud.yOffset = 150.f;
  20. hud.removeFromSuperViewOnHide = YES;
  21. [hud hide:YES afterDelay:3];
  22. //方式2.initWithView
  23. //use block
  24. HUD = [[MBProgressHUD alloc] initWithView:self.view];
  25. [self.view addSubview:HUD];
  26. HUD.labelText = @"Test";
  27. [HUD showAnimated:YES whileExecutingBlock:^{
  28. NSLog(@"%@",@"do somethings....");
  29. [self doTask];
  30. } completionBlock:^{
  31. [HUD removeFromSuperview];
  32. [HUD release];
  33. }];
  34. //圆形进度条
  35. HUD = [[MBProgressHUD alloc] initWithView:self.view];
  36. [self.view addSubview:HUD];
  37. HUD.mode = MBProgressHUDModeAnnularDeterminate;
  38. HUD.delegate = self;
  39. HUD.labelText = @"Loading";
  40. [HUD showWhileExecuting:@selector(myProgressTask) onTarget:self withObject:nil animated:YES];
  41. //自定义view
  42. HUD = [[MBProgressHUD alloc] initWithView:self.view];
  43. HUD.customView = [[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"37x-Checkmark.png"]] autorelease];
  44. // Set custom view mode
  45. HUD.mode = MBProgressHUDModeCustomView;
  46. HUD.delegate = self;
  47. HUD.labelText = @"Completed";
  48. [HUD show:YES];
  49. [HUD hide:YES afterDelay:3];

代理方法:

  1. #pragma mark -
  2. #pragma mark HUD的代理方法,关闭HUD时执行
  3. -(void)hudWasHidden:(MBProgressHUD *)hud
  4. {
  5. [hud removeFromSuperview];
  6. [hud release];
  7. hud = nil;
  8. }

二个task

  1. -(void) doTask{
  2. //你要进行的一些逻辑操作
  3. sleep(2);
  4. }
  5. -(void) myProgressTask{
  6. float progress = 0.0f;
  7. while (progress < 1.0f) {
  8. progress += 0.01f;
  9. HUD.progress = progress;
  10. usleep(50000);
  11. }
  12. }

MBProgressHUD的基本使用的更多相关文章

  1. MBProgressHud添加自定义动画

    在使用自定义view时,若直接使用,如下 MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES]; hud ...

  2. IOS MBProgressHUD的使用

    一,简介         苹果的应用程序一般都会用一种优雅的,半透明的进度显示效果,不过这个API是不公开的,因此你要是用了,很可能被清除出AppStore.而 MBProgressHUD提供了一个替 ...

  3. iOS基于MBProgressHUD的二次封装,一行搞定,使用超简单

    MBProgressHUD的使用,临时总结了几款最常用的使用场景: 1.提示消息 用法: [YJProgressHUD showMessage:@"显示文字,1s隐藏" inVie ...

  4. MBProgressHUD上传照片进度提示

    第一步,控制器先来个属性 @property (strong, nonatomic) MBProgressHUD *HUD; 第二步,显示与隐藏的调用方法 - (void)hudTipWillShow ...

  5. MBProgressHUD+FastCall

    + (void)showHudTipStr:(NSString *)tipStr; + (void)showHudTipStr:(NSString *)tipStr{ ) { MBProgressHU ...

  6. MBProgressHUD框架的使用:https://github.com/jdg/MBProgressHUD

    MBProgressHUD是一个开源类库,实现了各种样式的提示框, 下载地址:https://github.com/jdg/MBProgressHUD,然后把两个MBProgressHUD.h和MBP ...

  7. MBProgressHUD使用

    //方式1.直接在View上show HUD = [[MBProgressHUD showHUDAddedTo:self.view animated:YES] retain]; HUD.delegat ...

  8. MBProgressHUD.h file not found

    MBProgressHUD框架,怎么我导入MBProgressHUD+MJ.h会报错.(即MBProgressHUD+MJ根本不存在),我看其他人的视屏又可以导入 MBProgressHUD.h fi ...

  9. 【转】IOS学习笔记29—提示框第三方库之MBProgressHUD

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

  10. MBProgressHUD 扩展加载动画

    效果图: 设计给了一个组的图片,但是由于是透明的背景,会产生卡顿,其实只要两张图片就可以了 创建一个 MBProgressHUD 分类 增加方法 + (MB_INSTANCETYPE)myShowHU ...

随机推荐

  1. springMVC+ mongdb + redis +Jedis 环境搭建

    环境信息: JDK1.7 : Eclipse 4.4.1 ; mongdb + mongVUE:mongDB的安装 redis的下载和安装:window下安装redis maven3.0.5 新建ma ...

  2. Windows打印管理解决方案

    需求 从需求出发,我们的目的是在电脑上提供一个虚拟打印机,然后让用户选择这个虚拟机打印时产生的中间文件被拦截下来,之后进行进一步处理后在执行真实的打印. Windows打印体系 首先附上查找Windo ...

  3. MARCHdesign_王濤's 星云个人网站 | www.xingyun.cn/MARCHdesign

    MARCHdesign_王濤's 星云个人网站 | www.xingyun.cn/MARCHdesign MARCHdesign_王濤

  4. B - Networking - poj 1287

    有一些地方需要铺盖电缆,这些地方两点间的路可能不止一条,需要求出来至少需要多少电缆才能让所有的点都连接起来,当然,间接连接也算. /////////////////////////////////// ...

  5. 【.NET跨平台】mac上安装VS for mac步骤详解

    安装过程中提示以下内容 提示原文如下 It was not possible to complete an automatic installation. This might be due to a ...

  6. Django 数据库查询

    #!/usr/bin/python #coding:utf-8 from django.shortcuts import render; from django.shortcuts import re ...

  7. 图像的影像地图超链接,<map>标签浅谈

    在HTML中还可以把图片划分成多个热点区域,每一个热点域链接到不同网页的资源.这种效果的实质是把一幅图片划分为不同的热点区域,再让不同的区域进行超链接.这就是影像地图.要完成地图区域超链接要用到三种标 ...

  8. Win32 的dll导入

    dll 文件可以导入变量,函数,和C++类,但是导入变量会使执行程序与dll紧耦合,而C++类导入则需要两个文件的开发商所用的编译器相兼容,所以做好只导入函数; 创建dll : 头文件:#ifdef  ...

  9. [转] PostgreSQL的时间/日期函数使用

    PS:http://blog.csdn.net/love_rongrong/article/details/6712883 字符串模糊比较 日期类型的模糊查询是不能直接进行的,要先转换成字符串然后再查 ...

  10. Android组件间的数据传输

    组件我们有了,那么我们缺少一个组件之间传递信息的渠道.利用Intent做载体,这是一个王道的做法.还有呢,可以利用文件系统来做数据共享.也可以使用Application设置全局数据,利用组件来进行控制 ...