如何在 iOS 中添加 MBProgressHUD 等待jquery 加载等待效果数据

iOS开发——使用MBProgressHUD来增加用户体验
对于移动客户端应用来说,本身就非常注意用户体验,比如一个长时间的加载造成界面卡死,MBProgressHUD就可以帮助你解决该问题。MBProgressHUD可以在网页加载、下载等耗时操作中给予用户以提示。HUD的本意就是抬头显示功能。今天我们就尝试来使用MBProgressHUD这个强大的第三方库(感谢)。MBProgressHUD在Github的地址:/jdg/MBProgressHUD 。里面已经包含了较多的代码示例,大家可以根据自己的需求使用。 但是个人觉得直接使用MBProgressHUD有一点点复杂,然而也刚刚在网上发现有其他大神(不认识是谁,感谢)对MBProgressHUD做了封装,使用起来更加的方便,我也写了部分示例,上传至: /chenyufeng1991/UseMBProgressHUD 。
MBProgressHUD的使用步骤如下:
(1)首先我从网上下载了别人封装好的MBProgressHUD库,共有5个文件,大家也可以直接从我的代码中进行拷贝。
(2)同时我做了一个网络请求,使用AFNetworking来完成号码归属地的GET请求(可能由于服务器原因,本身该请求就耗时很久,正好可以来测试MBProgressHUD)。强烈建议大家学会Cocoapods和AFnetworking,关于Cocoapods和AFNetworking,可以参考《iOS开发&&网络请求案例汇总(AFNetworking)》、《iOS包管理工具Cocoapods的安装与使用》两篇博客。
我在界面上放了一个按钮,点击按钮进行网络请求。代码如下:(请注意注释。。。)
主要是[MBProgressHUD showMessage],[MBProgressHUD hideHUD],[MBProgressHUD showSuccess],[MBProgressHUD showError]四个方法的使用。
#import ViewController.h
#import MBProgressHUD+MJ.h
@interface ViewController ()
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
- (IBAction)buttonPressed:(id)sender {
//在一开始进行网络请求的时候,弹出MBProgressHUD;
[MBProgressHUD showMessage:@正在加载。。。];
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
manager.responseSerializer
= [AFHTTPResponseSerializer serializer];
//这里改成POST,就可以进行POST请求;
//把要传递的参数直接放到URL中;而不是放到字典中;
[manager GET:@.cn/WebServices/MobileCodeWS.asmx/getMobileCodeInfo?mobileCode=&userId=
parameters:nil
success:^(AFHTTPRequestOperation *operation,id responseObject){
NSString *string
= [[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding];
NSLog(@成功: %@, string);
//网络请求成功,隐藏上述的&正在加载&的MBProgressHUD;
[MBProgressHUD hideHUD];
//同时弹出&加载成功&的提示;
[MBProgressHUD showSuccess:@加载成功];
failure:^(AFHTTPRequestOperation *operation,NSError *error){
NSLog(@失败: %@, error);
//网络请求失败,隐藏上述的&正在加载&的MBProgressHUD;
[MBProgressHUD hideHUD];
//同时弹出&加载失败&的提示;
[MBProgressHUD showError:@加载失败];
(3)运行程序,效果如下:
【加载过程】
【大概过几秒,就会请求成功】
【断开网络,就会加载失败】
当然,你也可以根据自己的需求修改参数,文本。最好是查看,这样使用起来就会更加随心所欲。2015年5月 移动开发大版内专家分月排行榜第一2015年4月 移动开发大版内专家分月排行榜第一2014年9月 移动开发大版内专家分月排行榜第一
2015年3月 移动开发大版内专家分月排行榜第二2014年8月 移动开发大版内专家分月排行榜第二
2015年5月 移动开发大版内专家分月排行榜第一2015年4月 移动开发大版内专家分月排行榜第一2014年9月 移动开发大版内专家分月排行榜第一
2015年3月 移动开发大版内专家分月排行榜第二2014年8月 移动开发大版内专家分月排行榜第二
匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。iOS MBProgressHUD 常用的四种方式 - 简书
iOS MBProgressHUD 常用的四种方式
效果一 只显示文字:
冯绍峰粉色粉色.gif
// 只显示文字
- (void)TextButtonAction{
self.HUD = [[MBProgressHUD alloc] initWithView:self.view];
[self.view addSubview:_HUD];
_HUD.labelText = @"加载中,请稍等...";
_HUD.mode = MBProgressHUDModeT
[_HUD showAnimated:YES whileExecutingBlock:^{
completionBlock:^{
[_HUD removeFromSuperview];
圆形进度条
冯绍峰粉色粉色.gif
// 圆形进度条
- (void)CircularButtonAction{
//圆形进度条
self.HUD = [[MBProgressHUD alloc] initWithView:self.view];
[self.view addSubview:_HUD];
_HUD.mode = MBProgressHUDModeD
_HUD.delegate =
_HUD.labelText = @"等待中";
[_HUD showWhileExecuting:@selector(ProgressBar) onTarget:self withObject:nil animated:YES];
- (void)ProgressBar{
// 进度指示器,从0.0到1.0,默认值为0.0
float progress = 0.0f;
while (progress & 1.0f) {
progress += 0.01f;
_HUD.progress =
usleep函数能把进程挂起一段时间, 单位是微秒(千分之一毫秒)
usleep(50000);
文字 加 菊花
冯绍峰粉色粉色.gif
- (void)GeneralButtonAction{
//初始化进度框,置于当前的View当中
self.HUD = [[MBProgressHUD alloc] initWithView:self.view];
[self.view addSubview:_HUD];
//如果设置此属性则当前的view置于后台
_HUD.dimBackground = YES;
//设置对话框文字
_HUD.labelText = @"加载中";
//细节文字
_HUD.detailsLabelText = @"请耐心等待";
//显示对话框
[_HUD showAnimated:YES whileExecutingBlock:^{
//对话框显示时需要执行的操作
}// 在HUD被隐藏后的回调
completionBlock:^{
//操作执行完后取消对话框
[_HUD removeFromSuperview];
自定义动图
冯绍峰粉色粉色.gif
自定义 动图
- (void)CustomButtonAction{
//自定义view
self.HUD = [[MBProgressHUD alloc] initWithView:self.view];
//取消背景框
self.HUD.color = [UIColor whiteColor];
[self.view addSubview:_HUD];
UIImageView *images = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 200, 300)];
NSMutableArray *imageArray = [[NSMutableArray alloc]init];
for(int i = 1; i & 8 ; i++){
NSString *imgName = [NSString stringWithFormat:@"%d.tiff",i];
[imageArray addObject:[UIImage imageNamed:imgName]];
images.animationDuration = 0.7;
images.animationImages = imageA
// 开始播放
[images startAnimating];
_HUD.mode = MBProgressHUDModeCustomV
_HUD.delegate =
_HUD.customView =
[_HUD show:YES];
[_HUD hide:YES afterDelay:2];
既然我选择了不再做选择,就不会再做选择}

我要回帖

更多关于 ios 加载等待动画 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信