美文网首页
iOS gif图片展示

iOS gif图片展示

作者: percivals | 来源:发表于2020-12-22 15:52 被阅读0次

    GIF图片展示原理:
    将GIF图片转换成对应的图片源,获取到每一帧的原图,将原图数组赋值给UIImageView,进行展示

            NSURL *fileUrl = [[NSBundle mainBundle] URLForResource:@"scrollToRight" withExtension:@"gif"];
            CGImageSourceRef gifSource = CGImageSourceCreateWithURL((CFURLRef) fileUrl, NULL);          //将GIF图片转换成对应的图片源
            size_t frameCout = CGImageSourceGetCount(gifSource);                                        // 获取其中图片源个数,即由多少帧图片组成
            NSMutableArray *frames = [[NSMutableArray alloc] init];                                      // 定义数组存储拆分出来的图片
            for (size_t i = 0; i < frameCout; i++) {
                CGImageRef imageRef = CGImageSourceCreateImageAtIndex(gifSource, i, NULL); // 从GIF图片中取出源图片
                UIImage *imageName = [UIImage imageWithCGImage:imageRef];                  // 将图片源转换成UIimageView能使用的图片源
                [frames addObject:imageName];                                              // 将图片加入数组中
                CGImageRelease(imageRef);
            }
            
            UIImageView *gifView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, PADRP_RateForWidth(236), PADRP_RateForWidth(178))];
            gifView.animationImages = frames;
            gifView.animationDuration = 1; // 每次动画时长
            [gifView startAnimating];        // 开启动画
    

    相关文章

      网友评论

          本文标题:iOS gif图片展示

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