Xcode开发播放gif图片

作者: 会走路的键盘 | 来源:发表于2016-05-11 17:46 被阅读1028次

在开发iOS程序的过程中,可能会遇到要加载gif图片,下面介绍gif图片的加载方式:
先介绍一个第三方:gifView
在导入gifView后,由于gifView是在MRC下的,所以需要配置工程

QQ20160511-0@2x.png

之后就是在工程中书写代码的过程了。

#import "ViewController.h"
#import "GifView.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
//第一种 用UIImageView中的动画数组播放动画
//    [self showGifImageMethodOne];
    
//第二种 用UIWebView显示
//    [self showGifImageMethodTwo];
    
//第三种 用第三方GifView显示本地图片
    [self showGifImageMethodThree];
    
//用第三方显示从网络获取的动态图片
    [self showGifImageMethodFour];
    
}

#pragma mark 播放动态图片方式1 UIImageView
-(void)showGifImageMethodOne
{
//第一种 用UIImageView中的动画数组播放动画
    //创建UIImageView,添加到界面
    UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(20, 20, 100, 100)];
    [self.view addSubview:imageView];
    //创建一个数组,数组中按顺序添加要播放的图片(图片为静态的图片)
    NSMutableArray *imgArray = [NSMutableArray array];
    for (int i=1; i<7; i++) {
        UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"clock%02d.png",i]];
        [imgArray addObject:image];
    }
    //把存有UIImage的数组赋给动画图片数组
    imageView.animationImages = imgArray;
    //设置执行一次完整动画的时长
    imageView.animationDuration = 6*0.15;
    //动画重复次数 (0为重复播放)
    imageView.animationRepeatCount = 0;
    //开始播放动画
    [imageView startAnimating];
    //停止播放动画  - (void)stopAnimating;
    //判断是否正在执行动画  - (BOOL)isAnimating;
}

#pragma mark 播放动态图片方式2 UIWebView
-(void)showGifImageMethodTwo
{
//第二种 用UIWebView显示
    //得到图片的路径
    NSString *path = [[NSBundle mainBundle] pathForResource:@"happy" ofType:@"gif"];
    //将图片转为NSData
    NSData *gifData = [NSData dataWithContentsOfFile:path];
    //创建一个webView,添加到界面
    UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 150, 200, 200)];
    [self.view addSubview:webView];
    //自动调整尺寸
    webView.scalesPageToFit = YES;
    //禁止滚动
    webView.scrollView.scrollEnabled = NO;
    //设置透明效果
    webView.backgroundColor = [UIColor clearColor];
    webView.opaque = 0;
    //加载数据
    [webView loadData:gifData MIMEType:@"image/gif" textEncodingName:nil baseURL:nil];
}

#pragma mark 播放动态图片方式3 第三方显示本地动态图片
-(void)showGifImageMethodThree
{
//方式一
    //将图片转为NSData数据
    NSData *localData = [NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"songshu" ofType:@"gif"]];
    //创建一个第三方的View显示图片
    GifView *dataView = [[GifView alloc] initWithFrame:CGRectMake(0, 300, 200, 100) data:localData];
    [self.view addSubview:dataView];

//方式二
    //得到图片的路径
    NSString *path = [[NSBundle mainBundle] pathForResource:@"songshu" ofType:@"gif"];
    GifView *dataView2 = [[GifView alloc] initWithFrame:CGRectMake(200, 300, 150, 100) filePath:path];
    [self.view addSubview:dataView2];
}

#pragma mark 播放动态图片方式3 第三方显示从网络获取的动态图片
-(void)showGifImageMethodFour
{
    // 网络图片
    NSData *urlData = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://pic19.nipic.com/20120222/8072717_124734762000_2.gif"]];
    //创建一个第三方的View显示图片
    GifView *dataViewWeb = [[GifView alloc] initWithFrame:CGRectMake(20, 420, 280, 100) data:urlData];
    [self.view addSubview:dataViewWeb];
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
}

@end

相关文章

  • Xcode开发播放gif图片

    在开发iOS程序的过程中,可能会遇到要加载gif图片,下面介绍gif图片的加载方式:先介绍一个第三方:gifVie...

  • GIF图片的播放和生成

    首先需要导入头文件 GIF图片的播放 GIF图片的生成

  • iOS-播放gif动画文件(OC方法)

    iOS-.gif动画文件的播放 前言 播放gif动画的方法有多种: 将gif图片分解成多张图片使用UIImageV...

  • iOS 播放 gif 动画

    使用UIWebView播放 将GIF图片分解成多张PNG图片,使用UIImageView播放

  • gif 图片播放

    使用 UIWebView 播放 使用 UIImageView + SDWebImage 自定义 MBProgres...

  • 播放Gif图片

    // 1.加载Gif图片, 并且转成Data类型 guard let path = Bundle.main.pat...

  • 使用UIImageView播放动图

    动图大家都会想到gif图片,但是在iOS端不能够播放gif格式图片怎么办呢。。。 其实苹果为开发者提供的控件足以让...

  • iOS-GIF图播放

    封装播放GIF图片的Imageview分类GIF图片来源为本地或网络导入系统库: import ImageIO 加...

  • iOS中展示gif图片(swift)

    需要导入框架: 实现步骤: 获取gif图片 获取组成gif图片的总图片数量值 通过遍历,获取单张图片,及其播放时间...

  • iOS swift 手动实现播放GIF图片

    GIF图片本身就是一帧帧的图片,想要手动实现GIF图片的播放,需要将GIF图片里边的每一帧图片获取到,然后利用UI...

网友评论

    本文标题:Xcode开发播放gif图片

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