年年有"余"

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2720|回复: 0

MBProgressHUD的基本使用

[复制链接]
  • TA的每日心情
    奋斗
    2022-12-13 21:26
  • 签到天数: 371 天

    [LV.9]以坛为家II

    发表于 2014-11-21 17:55:11 | 显示全部楼层 |阅读模式
    一、基本显示效果

    1、最基本的视图
    1.     MBProgressHUD *hud = [[MBProgressHUD alloc] initWithView:self.view];
    2.     [hud show:YES];
    3.     [self.view addSubview:hud];
    复制代码
    iOS-模拟器屏幕快照“2014年11月21日-下午4.43.45”.jpg

    2、带文字加载视图
    1.     MBProgressHUD *hud = [[MBProgressHUD alloc] initWithView:self.view];
    2.     hud.labelText = @"loading...";
    3.     [hud show:YES];
    4.     [self.view addSubview:hud];
    复制代码
    iOS-模拟器屏幕快照“2014年11月21日-下午4.47.30”.jpg


    3、带文字加信息的视图
    1.     MBProgressHUD *hud = [[MBProgressHUD alloc] initWithView:self.view];
    2.     hud.labelText = @"loading...";
    3.     hud.labelColor = [UIColor redColor];
    4.     hud.labelFont = [UIFont systemFontOfSize:15];
    5.     hud.detailsLabelText = @"message";
    6.     [hud show:YES];
    7.     [self.view addSubview:hud];
    复制代码
    iOS-模拟器屏幕快照“2014年11月21日-下午4.52.02”.jpg


    4、进度指示及其他类型,通过属性progress来控制进度的完成度,取值0.0~1.0
    1.     MBProgressHUD *hud = [[MBProgressHUD alloc] initWithView:self.view];
    2.     hud.mode = MBProgressHUDModeDeterminate;                // 圆饼扇形填充
    3.     hud.mode = MBProgressHUDModeDeterminateHorizontalBar;   // 水平进度条
    4.     hud.mode = MBProgressHUDModeAnnularDeterminate;         // 圆圈圆弧填充
    5.     hud.mode = MBProgressHUDModeCustomView;     // 自定义视图
    6.     hud.mode = MBProgressHUDModeText;           // 仅文字显示
    7.     hud.progress = 0.3;
    8.     [hud show:YES];
    9.     [self.view addSubview:hud];
    复制代码
    iOS-模拟器屏幕快照“2014年11月21日-下午5.03.15”.jpg iOS-模拟器屏幕快照“2014年11月21日-下午5.03.31”.jpg iOS-模拟器屏幕快照“2014年11月21日-下午5.03.46”.jpg iOS-模拟器屏幕快照“2014年11月21日-下午5.04.29”.jpg
    二、几个重要的方法
        // 添加指示器
        + (MB_INSTANCETYPE)showHUDAddedTo:(UIView *)view animated:(BOOL)animated;

        // 移除指示器
        + (BOOL)hideHUDForView:(UIView *)view animated:(BOOL)animated;

        // 初始化视图
        - (id)initWithView:(UIView *)view;

        // 显示指示器
        - (void)show:(BOOL)animated;

        // 隐藏指示器
        - (void)hide:(BOOL)animated;

        // 显示指示器附带block代码块
        - (void)showAnimated:(BOOL)animated whileExecutingBlock:(dispatch_block_t)block;

        // 自定义队列显示指示器附带block代码块
        - (void)showAnimated:(BOOL)animated whileExecutingBlock:(dispatch_block_t)block onQueue:(dispatch_queue_t)queue;

        // 显示指示器附带block代码块及代码执行后的动作
        - (void)showAnimated:(BOOL)animated whileExecutingBlock:(dispatch_block_t)block completionBlock:(MBProgressHUDCompletionBlock)completion;

        // 自定义队列显示指示器附带block代码块及代码执行后的动作
        - (void)showAnimated:(BOOL)animated whileExecutingBlock:(dispatch_block_t)block onQueue:(dispatch_queue_t)queue completionBlock:(MBProgressHUDCompletionBlock)completion;


    三、几个重要的属性

    // 指示器类型(菊花、进度、纯文本等共6种类型)
    @property (assign) MBProgressHUDMode mode;

    // 菊花颜色
    @property (MB_STRONG) UIColor *activityIndicatorColor;

    // 动画类型,指指示器显示或消失时的动画,有渐变、缩放等
    @property (assign) MBProgressHUDAnimation animationType;

    // 自定义视图,用自己的view来代替指示器上的view(菊花)
    @property (MB_STRONG) UIView *customView;

    // 指示器进度,在包含进度类型的指示器上使用
    @property (assign) float progress;

    // 主标签文本
    @property (copy) NSString *labelText;

    // 主标签文字字体
    @property (MB_STRONG) UIFont* labelFont;

    // 主标签文字颜色
    @property (MB_STRONG) UIColor* labelColor;

    // 副标签文本
    @property (copy) NSString *detailsLabelText;

    // 副标签文字字体
    @property (MB_STRONG) UIFont* detailsLabelFont;

    // 副标签文字颜色
    @property (MB_STRONG) UIColor* detailsLabelColor;

    // 指示器边缘圆角弧度,默认为10个像素
    @property (assign) float cornerRadius;

    // 是否显示背景蒙板,默认为NO
    @property (assign) BOOL dimBackground;

    // 隐藏时是否从父控件移除,默认为NO
    @property (assign) BOOL removeFromSuperViewOnHide;

    四、框架下载
    GitHub下载
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    手机版|小黑屋|Archiver|iOS开发笔记 ( 湘ICP备14010846号 )

    GMT+8, 2024-4-29 08:37 , Processed in 0.051563 second(s), 21 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表