从零开始读MBProgressHUD(二)

MBProgressHUD.h概览


枚举

可用的HUD显示方式

typedef NS_ENUM(NSInteger, MBProgressHUDMode) {
/** UIActivityIndicatorView */
MBProgressHUDModeIndeterminate,
/** 圆形饼状图*/
MBProgressHUDModeDeterminate,
/** 水平进度条*/
MBProgressHUDModeDeterminateHorizontalBar,
/** 环形进度条*/
MBProgressHUDModeAnnularDeterminate,
/** 自定义*/
MBProgressHUDModeCustomView,
/** 仅文本*/
MBProgressHUDModeText
};

动画类型

typedef NS_ENUM(NSInteger, MBProgressHUDAnimation) {
/** Opacity animation */
MBProgressHUDAnimationFade,
/** 显示在屏幕上时有一个从大到小缩放的效果 */
MBProgressHUDAnimationZoom,
MBProgressHUDAnimationZoomOut =           MBProgressHUDAnimationZoom,
/** 与MBProgressHUDAnimationZoomOut相反*/
MBProgressHUDAnimationZoomIn
};

兼容ARC与MRC:

#ifndef MB_INSTANCETYPE
#if __has_feature(objc_instancetype)
#define MB_INSTANCETYPE instancetype
#else
#define MB_INSTANCETYPE id
#endif
#endif

#ifndef MB_STRONG
#if __has_feature(objc_arc)
#define MB_STRONG strong
#else
#define MB_STRONG retain
#endif
#endif

#ifndef MB_WEAK
#if __has_feature(objc_arc_weak)
#define MB_WEAK weak
#elif __has_feature(objc_arc)
#define MB_WEAK unsafe_unretained
#else
#define MB_WEAK assign
#endif
#endif

是否block可用(OSX106&&iOS4以后可用)

#if NS_BLOCKS_AVAILABLE
typedef void (^MBProgressHUDCompletionBlock)();
#endif

MBProgressHUD方法:

//配对方法hideHUDForView:animated:  
//animated 参见animationType
+ (MB_INSTANCETYPE)showHUDAddedTo:(UIView *)view animated:(BOOL)animated;
+ (BOOL)hideHUDForView:(UIView *)view animated:(BOOL)animated;

//return the number of HUDs found and removed.
+ (NSUInteger)hideAllHUDsForView:(UIView *)view animated:(BOOL)animated;

//返回最顶层的HUD或者全部的HUDs
+ (MB_INSTANCETYPE)HUDForView:(UIView *)view;
+ (NSArray *)allHUDsForView:(UIView *)view;

//构造函数
- (id)initWithWindow:(UIWindow *)window;
- (id)initWithView:(UIView *)view;

//Display or hide the HUD
- (void)show:(BOOL)animated;
- (void)hide:(BOOL)animated;
- (void)hide:(BOOL)animated afterDelay: (NSTimeInterval)delay;
//内部为method开启新线程
- (void)showWhileExecuting:(SEL)method onTarget:(id)target withObject:(id)object animated:(BOOL)animated;

//block方法
- (void)showAnimated:(BOOL)animated whileExecutingBlock:(dispatch_block_t)block;
- (void)showAnimated:(BOOL)animated whileExecutingBlock:(dispatch_block_t)block completionBlock:(MBProgressHUDCompletionBlock)completion;
- (void)showAnimated:(BOOL)animated whileExecutingBlock:(dispatch_block_t)block onQueue:(dispatch_queue_t)queue;
- (void)showAnimated:(BOOL)animated whileExecutingBlock:(dispatch_block_t)block onQueue:(dispatch_queue_t)queue
      completionBlock:(MBProgressHUDCompletionBlock)completion;

MBProgressHUD属性:

//显示类型(饼图,环图,进度条...)
@property (assign) MBProgressHUDMode mode;
//动画类型
@property (assign) MBProgressHUDAnimation animationType;
//自定义view
@property (MB_STRONG) UIView *customView;
@property (MB_WEAK) id<MBProgressHUDDelegate> delegate;
@property (copy) NSString *labelText;
@property (copy) NSString *detailsLabelText;
@property (assign) float opacity;
@property (MB_STRONG) UIColor *color;
@property (assign) float xOffset;
@property (assign) float yOffset;
@property (assign) float margin;
@property (assign) float cornerRadius;
@property (assign) BOOL dimBackground;
@property (assign) float graceTime;
@property (assign) float minShowTime;
@property (assign) BOOL taskInProgress;
@property (assign) BOOL removeFromSuperViewOnHide;
@property (MB_STRONG) UIFont* labelFont;
@property (MB_STRONG) UIColor* labelColor;
@property (MB_STRONG) UIFont* detailsLabelFont;
@property (MB_STRONG) UIColor* detailsLabelColor;
@property (MB_STRONG) UIColor *activityIndicatorColor;
@property (assign) float progress;
@property (assign) CGSize minSize;
@property (atomic, assign, readonly) CGSize size;
@property (assign, getter = isSquare) BOOL square;

MBProgressHUDDelegate:

//HUD消失时调用
- (void)hudWasHidden:(MBProgressHUD *)hud;

MBRoundProgressView:

@property (nonatomic, assign) float progress;
@property (nonatomic, MB_STRONG) UIColor *progressTintColor;
@property (nonatomic, MB_STRONG) UIColor *backgroundTintColor;
@property (nonatomic, assign, getter = isAnnular) BOOL annular;

MBBarProgressView:

@property (nonatomic, assign) float progress;
@property (nonatomic, MB_STRONG) UIColor *lineColor;
@property (nonatomic, MB_STRONG) UIColor *progressRemainingColor;
@property (nonatomic, MB_STRONG) UIColor *progressColor;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值