SVProgressHUD的一些常見用法

方法

SVProgressHUD所以的方法都是類方法,并且對象是通過單例創建。由于方法都是通過類名調用,簡單明了。

基本方法

     + (void)show;    顯示:狀態是一個迅速轉動的圈
     + (void)showWithMaskType:(SVProgressHUDMaskType)maskType; 顯示并且帶著一個狀態
     + (void)showWithStatus:(NSString*)status; 顯示并且帶著文字
     + (void)showWithStatus:(NSString*)status maskType:(SVProgressHUDMaskType)maskType;
 
     + (void)showProgress:(float)progress;  //顯示進度:狀態是一個進度圈
     + (void)showProgress:(float)progress maskType:(SVProgressHUDMaskType)maskType;
     + (void)showProgress:(float)progress status:(NSString*)status;
     + (void)showProgress:(float)progress status:(NSString*)status maskType:(SVProgressHUDMaskType)maskType;
 
     + (void)setStatus:(NSString*)string; // 改變正顯示著的HUD的文字
 
     // stops the activity indicator, shows a glyph + status, and dismisses HUD a little bit later
     + (void)showInfoWithStatus:(NSString *)string;   //顯示消息信息,其實就是中心圖片更換了
     + (void)showInfoWithStatus:(NSString *)string maskType:(SVProgressHUDMaskType)maskType;
 
     + (void)showSuccessWithStatus:(NSString*)string; //顯示成功消息
     + (void)showSuccessWithStatus:(NSString*)string maskType:(SVProgressHUDMaskType)maskType;
 
     + (void)showErrorWithStatus:(NSString *)string; //顯示錯誤消息
     + (void)showErrorWithStatus:(NSString *)string maskType:(SVProgressHUDMaskType)maskType;
 
     // use 28x28 white pngs
     + (void)showImage:(UIImage*)image status:(NSString*)status; //顯示自己設置的圖片,圖片大小事28 * 28 px
     + (void)showImage:(UIImage*)image status:(NSString*)status maskType:(SVProgressHUDMaskType)maskType;
 
     + (void)setOffsetFromCenter:(UIOffset)offset; //距離中心點的偏移量
     + (void)resetOffsetFromCenter; //返回中心點
 
     + (void)popActivity; // 消除一個HUD,根據其實現方法如果前面有執行了好幾次show方法,如果給定的progress == 0 或者 pregress < 0那樣就會讓使一個參數+1,執行這個方法會使那個參數-1,如果參數==0時 執行dismiss方法。
     + (void)dismiss; 消失
 
     + (BOOL)isVisible; 是否正在顯示

關于HUD的屬性配置

     + (void)setBackgroundColor:(UIColor*)color;       //背景顏色          // default is [UIColor whiteColor]
     + (void)setForegroundColor:(UIColor*)color;       //progress 和 label顏色          // default is [UIColor blackColor]
     + (void)setRingThickness:(CGFloat)width;          //progress 寬度          // default is 4 pt
     + (void)setFont:(UIFont*)font;                     //字體         // default is [UIFont preferredFontForTextStyle:UIFontTextStyleSubheadline]
     + (void)setInfoImage:(UIImage*)image;               //消息的圖片        // default is the bundled info image provided by Freepik
     + (void)setSuccessImage:(UIImage*)image;            //成功時的圖片        // default is the bundled success image provided by Freepik
     + (void)setErrorImage:(UIImage*)image;              //失敗時的圖片        // default is the bundled error image provided by Freepik
     + (void)setDefaultMaskType:(SVProgressHUDMaskType)maskType; //當HUD顯示時,用戶是否可以點擊其他控件// default is SVProgressHUDMaskTypeNone
 
     SVProgressHUDMaskTypeNone = 1,  // 允許用戶進行其他用戶操作
     SVProgressHUDMaskTypeClear,     // 不允許用戶進行其他用戶操作
     SVProgressHUDMaskTypeBlack,     // 不允許用戶進行其他用戶操作,并且背景是黑色的
     SVProgressHUDMaskTypeGradient   // 允許用戶進行其他用戶操作,并且背景是漸變的黑色
 
     + (void)setViewForExtension:(UIView*)view;         //可以延展一個圖片必須設置#define SV_APP_EXTENSIONS

關于HUD的通知

 extern NSString * const SVProgressHUDDidReceiveTouchEventNotification; 在HUD外點擊
 extern NSString * const SVProgressHUDDidTouchDownInsideNotification; 在HUD中點擊
 extern NSString * const SVProgressHUDWillDisappearNotification;  將要顯示
 extern NSString * const SVProgressHUDDidDisappearNotification;   已經顯示
 extern NSString * const SVProgressHUDWillAppearNotification;     將要消失
 extern NSString * const SVProgressHUDDidAppearNotification;      已經消失
 
 extern NSString * const SVProgressHUDStatusUserInfoKey; HUD的狀態

在通知中userInfo字典中存儲了HUD的狀態,其key為SVProgressHUDStatusUserInfoKey

MBProgressHUD的基本使用

    /**
     *  類方法
     */
    /*
    MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES];
    @weakify(hud)
    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
        @strongify(hud)
        [MBProgressHUD hideAllHUDsForView:self.view animated:YES];
    });
    */
 
    /**
     *  實例方法
     */
    MBProgressHUD *hud = [[MBProgressHUD alloc] initWithView:self.view];
 
    //顯示hud的模式
    hud.mode = MBProgressHUDModeDeterminate;
 
    //背景顏色
    hud.color = [UIColor redColor];
 
    //主標題
    hud.labelText = @"主標題";
 
    //副標題
    hud.detailsLabelText = @"副標題";
 
    //顯示、隱藏時的動畫樣式
    hud.animationType = MBProgressHUDAnimationZoomIn;
 
    //當mode的屬性是跟進度相關時,就可以設置progress的值,實現實時進度的顯示
    hud.progress = 0.8;
 
    // HUD的相對于父視圖 x 的偏移,默認居中
//    hud.xOffset = 50;
//    hud.yOffset = 50;
 
    //是否顯示蒙板
    hud.dimBackground = YES;
 
    //HUD內部視圖相對于HUD的內邊距
    hud.margin = 50;
 
    //HUD的圓角半徑
    hud.cornerRadius = 20;
 
    //最小的顯示時間
    hud.minShowTime = 3.0;
 
    // HUD的最小尺寸
    hud.minSize = CGSizeMake(300, 300);
 
    // 代理中只有一個方法,即獲得HUD隱藏后的時刻
//    hud.delegate = self;
 
    [self.view addSubview:hud];
 
    [hud showAnimated:YES whileExecutingBlock:^{
      //hud執行期間
        NSLog(@"執行期間");
    } onQueue:dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0) completionBlock:^{
       //hud執行完畢
        NSLog(@"執行完畢");
    }];
 
}

原文章:https://blog.csdn.net/wujakf/article/details/70882827

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,527評論 6 544
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,687評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,640評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,957評論 1 318
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,682評論 6 413
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 56,011評論 1 329
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 44,009評論 3 449
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,183評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,714評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,435評論 3 359
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,665評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,148評論 5 365
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,838評論 3 350
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,251評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,588評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,379評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,627評論 2 380

推薦閱讀更多精彩內容

  • 視頻處理 BeautifyFaceDemo[https://github.com/Guikunzhi/Beauti...
    香橙柚子閱讀 2,678評論 0 14
  • 久違的晴天,家長會。 家長大會開好到教室時,離放學已經沒多少時間了。班主任說已經安排了三個家長分享經驗。 放學鈴聲...
    飄雪兒5閱讀 7,550評論 16 22
  • 今天感恩節哎,感謝一直在我身邊的親朋好友。感恩相遇!感恩不離不棄。 中午開了第一次的黨會,身份的轉變要...
    迷月閃星情閱讀 10,597評論 0 11
  • 可愛進取,孤獨成精。努力飛翔,天堂翱翔。戰爭美好,孤獨進取。膽大飛翔,成就輝煌。努力進取,遙望,和諧家園。可愛游走...
    趙原野閱讀 2,758評論 1 1
  • 在妖界我有個名頭叫胡百曉,無論是何事,只要找到胡百曉即可有解決的辦法。因為是只狐貍大家以訛傳訛叫我“傾城百曉”,...
    貓九0110閱讀 3,308評論 7 3