iOS第三方框架MBProgressHUD的使用

MBProgressHUD是一個嵌入式的iOS類,它在后臺線程工作時在前臺UI顯示帶有指示符或者半透明的標(biāo)簽.

用法

在運(yùn)行長時間的任務(wù)時,需要遵循的主要準(zhǔn)則是保持主線程不工作鹃彻,因此可以及時更新UI醇份。因此阿弃,是在主線程上使用MBProgressHUD,然后將要執(zhí)行的任務(wù)旋轉(zhuǎn)到新線程上。

[MBProgressHUD showHUDAddedTo:self.view animated:YES];
dispatch_async(dispatch_get_global_queue( DISPATCH_QUEUE_PRIORITY_LOW, 0), ^{
    // 任務(wù)代碼
    dispatch_async(dispatch_get_main_queue(), ^{
        [MBProgressHUD hideHUDForView:self.view animated:YES];
    });
});

您可以在任何view中添加HUD.但是避免將HUD添加到UIKit具有復(fù)雜視圖層次結(jié)構(gòu)的某些視圖, 比如UITableViewUICollectionView,這樣可能以意想不到的方式改變他們的子視圖,從而破壞HUD顯示臭增。

使用mode屬性來配置你的HUD

MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES];
hud.mode = MBProgressHUDModeAnnularDeterminate;
hud.label.text = @"Loading";
[self doSomethingInBackgroundWithProgressCallback:^(float progress) {
    hud.progress = progress;
} completionCallback:^{
    [hud hideAnimated:YES];
}];

使用一個NSProgress對象,當(dāng)通過該對象報告進(jìn)度時,MBProgressHUD會自動更新

MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES];
hud.mode = MBProgressHUDModeAnnularDeterminate;
hud.label.text = @"Loading";
NSProgress *progress = [self doSomethingInBackgroundCompletion:^{
    [hud hideAnimated:YES];
}];
hud.progressObject = progress;

UI更新,傾向于調(diào)用MBProgressHUD應(yīng)始終在主線程上完成竹习。

如果你需要在主線程中運(yùn)行你的長時間運(yùn)行的任務(wù)誊抛,你應(yīng)該稍微延遲一點,所以UIKit將有足夠的時間來更新UI(即繪制HUD)整陌,然后用你的任務(wù)阻塞主線程拗窃。

[MBProgressHUD showHUDAddedTo:self.view animated:YES];
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, 0.01 * NSEC_PER_SEC);
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
    // Do something...
    [MBProgressHUD hideHUDForView:self.view animated:YES];
});
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市泌辫,隨后出現(xiàn)的幾起案子随夸,更是在濱河造成了極大的恐慌,老刑警劉巖震放,帶你破解...
    沈念sama閱讀 222,627評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件宾毒,死亡現(xiàn)場離奇詭異,居然都是意外死亡殿遂,警方通過查閱死者的電腦和手機(jī)诈铛,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,180評論 3 399
  • 文/潘曉璐 我一進(jìn)店門邪锌,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人癌瘾,你說我怎么就攤上這事觅丰。” “怎么了妨退?”我有些...
    開封第一講書人閱讀 169,346評論 0 362
  • 文/不壞的土叔 我叫張陵妇萄,是天一觀的道長。 經(jīng)常有香客問我咬荷,道長冠句,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,097評論 1 300
  • 正文 為了忘掉前任幸乒,我火速辦了婚禮懦底,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘罕扎。我一直安慰自己聚唐,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 69,100評論 6 398
  • 文/花漫 我一把揭開白布腔召。 她就那樣靜靜地躺著杆查,像睡著了一般。 火紅的嫁衣襯著肌膚如雪臀蛛。 梳的紋絲不亂的頭發(fā)上亲桦,一...
    開封第一講書人閱讀 52,696評論 1 312
  • 那天,我揣著相機(jī)與錄音浊仆,去河邊找鬼客峭。 笑死,一個胖子當(dāng)著我的面吹牛抡柿,可吹牛的內(nèi)容都是我干的舔琅。 我是一名探鬼主播,決...
    沈念sama閱讀 41,165評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼沙绝,長吁一口氣:“原來是場噩夢啊……” “哼搏明!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起闪檬,我...
    開封第一講書人閱讀 40,108評論 0 277
  • 序言:老撾萬榮一對情侶失蹤星著,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后粗悯,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體虚循,經(jīng)...
    沈念sama閱讀 46,646評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,709評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了横缔。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片铺遂。...
    茶點故事閱讀 40,861評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖茎刚,靈堂內(nèi)的尸體忽然破棺而出襟锐,到底是詐尸還是另有隱情,我是刑警寧澤膛锭,帶...
    沈念sama閱讀 36,527評論 5 351
  • 正文 年R本政府宣布粮坞,位于F島的核電站,受9級特大地震影響初狰,放射性物質(zhì)發(fā)生泄漏莫杈。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,196評論 3 336
  • 文/蒙蒙 一奢入、第九天 我趴在偏房一處隱蔽的房頂上張望筝闹。 院中可真熱鬧,春花似錦腥光、人聲如沸关顷。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,698評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽解寝。三九已至扩然,卻和暖如春艘儒,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背夫偶。 一陣腳步聲響...
    開封第一講書人閱讀 33,804評論 1 274
  • 我被黑心中介騙來泰國打工界睁, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人兵拢。 一個月前我還...
    沈念sama閱讀 49,287評論 3 379
  • 正文 我出身青樓翻斟,卻偏偏與公主長得像,于是被迫代替她去往敵國和親说铃。 傳聞我的和親對象是個殘疾皇子访惜,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,860評論 2 361

推薦閱讀更多精彩內(nèi)容

  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件腻扇、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,124評論 4 61
  • 茶是天然飲料债热,健康飲品,茶中含有多種人體所需的營養(yǎng)物質(zhì)幼苛,經(jīng)常喝茶的人有意想不到的好處窒篱,茶能讓我們變得健康,對長壽也...
    閑情歲月_f0cb閱讀 95評論 0 0
  • 大學(xué)就讀的學(xué)校特別奇葩配并,學(xué)校要求只有大一下學(xué)期班級英語前三名獲得者能夠獲得四級考試的名額和機(jī)會,對于我這種高考完就...
    13d2fa1473e0閱讀 4,324評論 39 92
  • 想找個地方去旅行 想在一個陌生的城市里 在古樸的街道中 走走停停 想在雨天里奔跑 不害怕淋濕頭發(fā)高镐,弄花了妝 想在深...
    多糖芒果汁閱讀 221評論 0 3