/*
要將一個MBProgressHUD顯示出來,1令杈,創(chuàng)建對象走敌;2,將HUD添加到view上这揣;3悔常,調(diào)用show方法
隱藏,1给赞,hide:方法机打;? 2,hide: afterDelay: 方法
其它的用法都是特殊的設置等
*/
HUD = [[MBProgressHUD alloc] init];
[self.view addSubview:HUD];
//? ? HUD.mode = MBProgressHUDModeIndeterminate;//菊花片迅,默認值
//? ? HUD.mode = MBProgressHUDModeDeterminate;//圓餅残邀,餅狀圖
//? ? HUD.mode = MBProgressHUDModeDeterminateHorizontalBar;//進度條
HUD.mode = MBProgressHUDModeAnnularDeterminate;//圓環(huán)作為進度條
//? ? HUD.mode = MBProgressHUDModeCustomView; //需要設置自定義視圖時候設置成這個
//? ? HUD.mode = MBProgressHUDModeText; //只顯示文本
//1,設置背景框的透明度? 默認0.8
HUD.opacity = 1;
//2,設置背景框的背景顏色和透明度, 設置背景顏色之后opacity屬性的設置將會失效
HUD.color = [UIColor redColor];
HUD.color = [HUD.color colorWithAlphaComponent:1];
//3,設置背景框的圓角值柑蛇,默認是10
HUD.cornerRadius = 20.0;
//4,設置提示信息 信息顏色芥挣,字體
HUD.labelColor = [UIColor blueColor];
HUD.labelFont = [UIFont systemFontOfSize:13];
HUD.labelText = @"Loading...";
//5,設置提示信息詳情 詳情顏色,字體
HUD.detailsLabelColor = [UIColor blueColor];
HUD.detailsLabelFont = [UIFont systemFontOfSize:13];
HUD.detailsLabelText = @"LoadingLoading...";
//6耻台,設置菊花顏色? 只能設置菊花的顏色
HUD.activityIndicatorColor = [UIColor blackColor];
//7,設置一個漸變層
HUD.dimBackground = YES;
//8,設置動畫的模式
//? ? HUD.mode = MBProgressHUDModeIndeterminate;
//9空免,設置提示框的相對于父視圖中心點的便宜,正值 向右下偏移盆耽,負值左上
HUD.xOffset = -80;
HUD.yOffset = -100;
//10蹋砚,設置各個元素距離矩形邊框的距離
HUD.margin = 0;
//11,背景框的最小大小
HUD.minSize = CGSizeMake(50, 50);
//12設置背景框的實際大小? readonly
CGSize size = HUD.size;
//13,是否強制背景框?qū)捀呦嗟?/p>
HUD.square = YES;
//14,設置顯示和隱藏動畫類型? 有三種動畫效果摄杂,如下
//? ? HUD.animationType = MBProgressHUDAnimationFade; //默認類型的坝咐,漸變
//? ? HUD.animationType = MBProgressHUDAnimationZoomOut; //HUD的整個view后退 然后逐漸的后退
HUD.animationType = MBProgressHUDAnimationZoomIn; //和上一個相反,前近析恢,最后淡化消失
//15,設置最短顯示時間墨坚,為了避免顯示后立刻被隱藏? 默認是0
//? ? HUD.minShowTime = 10;
//16,
/*
// 這個屬性設置了一個寬限期,它是在沒有顯示HUD窗口前被調(diào)用方法可能運行的時間映挂。
// 如果被調(diào)用方法在寬限期內(nèi)執(zhí)行完泽篮,則HUD不會被顯示盗尸。
// 這主要是為了避免在執(zhí)行很短的任務時,去顯示一個HUD窗口咪辱。
// 默認值是0振劳。只有當任務狀態(tài)是已知時,才支持寬限期油狂。具體我們看實現(xiàn)代碼历恐。
@property (assign) float graceTime;
// 這是一個標識位,標明執(zhí)行的操作正在處理中专筷。這個屬性是配合graceTime使用的弱贼。
// 如果沒有設置graceTime,則這個標識是沒有太大意義的磷蛹。在使用showWhileExecuting:onTarget:withObject:animated:方法時吮旅,
// 會自動去設置這個屬性為YES,其它情況下都需要我們自己手動設置味咳。
@property (assign) BOOL taskInProgress;
*/
//17,設置隱藏的時候是否從父視圖中移除庇勃,默認是NO
HUD.removeFromSuperViewOnHide = NO;
//18,進度指示器? 模式是0,取值從0.0————1.0
//? ? HUD.progress = 0.5;
//19,隱藏時候的回調(diào) 隱藏動畫結(jié)束之后
HUD.completionBlock = ^(){
NSLog(@"abnnfsfsf");
};
//設置任務槽驶,在hud上顯示任務的進度
[HUD showWhileExecuting:@selector(myProgressTask) onTarget:self withObject:nil animated:YES];
//? ? [HUD show:YES];
//兩種隱藏的方法
//? ? [HUD hide:YES];
[HUD hide:YES afterDelay:5];
}
//任務责嚷,測試進度顯示
- (void)myProgressTask {
// This just increases the progress indicator in a loop
float progress = 0.0f;
while (progress < 1.0f) {
progress += 0.01f;
HUD.progress = progress;
usleep(50000);
}
}