使用 MBProgressHUD,如果在一個函數中添加了 HUD,又在函數結束前做了耗時操作,此時hud 不會立刻顯示出來,而是需要等到函數結束后才能顯示.
MBProgressHUD?給出了解決辦法:
請記住,UI更新,傾斜調用MBProgressHUD應該始終在主線程上完成。
如果需要在主線程中運行長時間運行的任務,您應該稍微延遲執行它,因此UIKit將有足夠的時間來更新UI(即:在阻塞主線程之前,先畫出HUD。
[MBProgressHUDshowHUDAddedTo:self.viewanimated:YES];
dispatch_time_tpopTime = dispatch_time(DISPATCH_TIME_NOW,0.01* NSEC_PER_SEC);
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
???????//Do something...
??????? [MBProgressHUDhideHUDForView:self.viewanimated:YES];
});