iphone gif 播放原理和源码(例子)

之前有做iphone的gif播放,搜索了很多博客,有几种方法

1)原理是解析出GIf,然后利用UIimageView的animationImage这个方法来设置动画。写出这个代码是牛人。

2)利用UIWebView来播放GIf

   [self.unreadWebView setOpaque:NO];
        [self.unreadWebView setBackgroundColor:[UIColor clearColor]];
    NSString* gifFileName = @"alert.gif";
        NSMutableString* htmlStr = [NSMutableString string];
        [htmlStr appendString:@"<img src=\""];
        [htmlStr appendFormat:@"%@",gifFileName];
        [htmlStr appendString:@"\" alt=\"picture\"/>"];
        [self.unreadWebView loadHTMLString:htmlStr baseURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] bundlePath]]];

3)利用opengl来实现,如http://www.cocoachina.com/iphonedev/sdk/2010/0416/1084.html

4)利用iphone自带的 CGImageSource相关方法来实现


以上的方法1,3对于很多GIF播放支持不好,尤其是那种GIF帧间有依赖关系(或者说压缩过),播放起来显示不全,第二种没用过,据说只能播放一次,不能循环。

       所以选了第四种。网络上有开源代码GifView,不过这个代码不太好,尤其有预加载图像的时候,会自动播放。我做了一些改动。



源码:有要的联系我邮箱吧, [email protected] 

你可能感兴趣的:(String,网络,iPhone,2010)