美文网首页IOS ios实用开发技巧iOS技术资料
MBProgressHUD+ SDWebImage加载gif图片

MBProgressHUD+ SDWebImage加载gif图片

作者: Mrqwer | 来源:发表于2017-09-20 16:57 被阅读461次

    MBProgressHUD和SDWebImage都是IOS开发常用的第三方库,多么方便,在这里我就不说了!这里介绍的的SDWebImage和MBProgressHUD简单的混合使用的加载动画!

    1.手动或者cocoposd自动导入这两个库,然后导入头文件!注意:SDWebImage的版本千万不要搞错,要不然会没有加载Gif的方法!

    2.新建一个类别,基于MBProgressHUD,在这里我把它命名为MBProgressHUD+NH。

    3.在MBProgressHUD+NH.h文件中声明一个方法!

    //加载动图

    + (void)showGifToView:(UIView *)view;

    /**

    *  快速从window中隐藏ProgressView

    */

    + (void)hideHUD;

    4.在MBProgressHUD+NH.m方法中实现 千万不要忘记在.m文件中导入#import "UIImage+GIF.h"

    要不然[UIImage sd_animatedGIFNamed:@"timg"];方法没办法用!

    1.显示加载动画的方法!

    + (void)showGifToView:(UIView *)view{

    //这里最好加个判断,让这个加载动画添加到window上,调用的时候,这个view传个nil就行了!

    if (view == nil) view = (UIView*)[UIApplication sharedApplication].delegate.window;

    MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:view animated:YES];

    //使用SDWebImage 放入gif 图片--(因为项目中使用的都是同一个加载动画,所以在这里我把图片写死了)

    UIImage *image = [UIImage sd_animatedGIFNamed:@"timg"];

    //自定义imageView

    UIImageView *cusImageV = [[UIImageView alloc] initWithImage:image];

    //设置hud模式

    hud.mode = MBProgressHUDModeCustomView;

    //设置在hud影藏时将其从SuperView上移除,自定义情况下默认为NO

    hud.removeFromSuperViewOnHide = YES;

    //设置提示性文字

    //    hud.label.text = @"正在加载中";

    //    // 设置文字大小

    //    hud.label.font = [UIFont systemFontOfSize:20];

    //    //设置文字的背景颜色

    //    //    hud.label.backgroundColor = [UIColor redColor];

    //

    //设置方框view为该模式后修改颜色才有效果

    hud.bezelView.style = MBProgressHUDBackgroundStyleSolidColor;

    //设置方框view背景色

    hud.bezelView.backgroundColor = [UIColor clearColor];

    //设置总背景view的背景色,并带有透明效果

    //    hud.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.3];

    hud.customView = cusImageV;

    }

    //隐藏加载动画的方法

    + (void)hideHUDForView:(UIView *)view{

    if (view == nil) view = (UIView*)[UIApplication sharedApplication].delegate.window;

    [self hideHUDForView:view animated:YES];

    }

    + (void)hideHUD

    {

    [self hideHUDForView:nil];

    }

    5.好!接下来就是最重要的时刻了!

    如果是在项目中,可以直接把这个MBProgressHUD+NH.h直接导入到pch文件或者头文件里面!

    调用代码如下:

    [MBProgressHUD showGifToView:nil];

    隐藏方法如下:

    [MBProgressHUD hideHUD];

    好了,到这里,MBProgressHUD和SDWebImage的简单混合使用建完成了!需要更多更得小伙伴,可以自己添加哦!

    相关文章

      网友评论

        本文标题:MBProgressHUD+ SDWebImage加载gif图片

        本文链接:https://www.haomeiwen.com/subject/rsposxtx.html