美文网首页iOS 工具集
iOS开发:让GIF动画只播放一次

iOS开发:让GIF动画只播放一次

作者: 流浪的诗意 | 来源:发表于2019-03-22 13:30 被阅读0次

    工作中我们拿到的是一个GIF文件,如果不作处理,直接使用SDWebImage就会无限次播放,那么我们只要他播放一次怎么办呢,上代码:

    - (void)showGifImageOnlyOnceWithImageView:(UIImageView*)imageView path:(NSString*)path{

        NSData *data = [NSData dataWithContentsOfFile:path];

        CGImageSourceRef gifSource = CGImageSourceCreateWithData(CFBridgingRetain(data), nil);

        size_tgifCount =CGImageSourceGetCount(gifSource);

        NSMutableArray *frames = [[NSMutableArray alloc]init];

        for(size_ti =0; i< gifCount; i++) {

            CGImageRefimageRef =CGImageSourceCreateImageAtIndex(gifSource, i,NULL);

            UIImage*image = [UIImageimageWithCGImage:imageRef];

            [framesaddObject:image];

            CGImageRelease(imageRef);

        }

    //从这里开始是不是很熟悉

        imageView.animationImages= frames;

        imageView.animationDuration=2;

        imageView.animationRepeatCount = 1;

        [imageViewstartAnimating];

    }

    相关文章

      网友评论

        本文标题:iOS开发:让GIF动画只播放一次

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