MBProgressHud添加自定义动画

Posted apologize的ios学习足迹

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MBProgressHud添加自定义动画相关的知识,希望对你有一定的参考价值。

在使用自定义view时,若直接使用,如下

MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES];
hud.label.text = @"加载中…";
hud.mode = MBProgressHUDModeCustomView;
UIImage *image = [[UIImage imageNamed:@"toast_loading"] imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];
UIImageView *imgView = [[UIImageView alloc] initWithImage:image];
hud.customView = imgView;

hud.bezelView.color = [UIColor colorWithWhite:0.0 alpha:1];
//文字颜色
hud.contentColor = [UIColor whiteColor];
hud.animationType = MBProgressHUDAnimationFade;

那么效果为

技术分享

若想使自定义view有动态效果,那么需要对UIImageView添加动画

MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES];
hud.label.text = @"加载中…";
hud.mode = MBProgressHUDModeCustomView;
UIImage *image = [[UIImage imageNamed:@"toast_loading"] imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];
UIImageView *imgView = [[UIImageView alloc] initWithImage:image];
CABasicAnimation *anima = [CABasicAnimation animationWithKeyPath:@"transform.rotation"];
anima.toValue = @(M_PI*2);
anima.duration = 1.0f;
anima.repeatCount = 10;
[imgView.layer addAnimation:anima forKey:nil];
hud.customView = imgView;

hud.bezelView.color = [UIColor colorWithWhite:0.0 alpha:1];
//文字颜色
hud.contentColor = [UIColor whiteColor];
hud.animationType = MBProgressHUDAnimationFade;

此时效果为

技术分享

最后补充,若想设置hud大小,可以用

hud.minSize = CGSizeMake(165,90);

 

以上是关于MBProgressHud添加自定义动画的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段——CSS动画

VSCode自定义代码片段7——CSS动画

VSCode自定义代码片段7——CSS动画

使用喷气背包导航将自定义过渡动画添加到底部导航设置

使用删除与隐藏时未调用自定义动画

IOS - MBProgressHUD 设置自定义背景图片