sta*_*ckr 8 sockets iphone objective-c uiimageview ios
我在处理动画GIF的方式上遇到了麻烦.我知道你不能在UIImageView上使用动画GIF,你必须在UIImageView上使用自定义动画.
但..
我有一个Java服务器通过socketstream发送GIF图像.iOS(iPhone)接收该流并将其转换为NSData类型.我成功地在UIImageView中捕获并显示了这个图像,但是你们中许多人已经知道了......它只显示第一帧.
我还发现了一些代码将GIF解码为单独的图像,但该代码的工作原理是GIF文件,而不是NSData.
问题:如何将NSData文件转换为单独的图像并将它们放在NSArray中以将其用作动画?
注意:在接收的NSData中,图像和一些由罕见字符分隔的文本.所以NSData看起来像这样:[image] [separator] [text].
希望有人可以给我一些指针或一些样品来处理..
在此先感谢,我会继续搜索,直到你或我找到答案:)
Ano*_*mie 14
除非您在IOS 4之前定位设备,否则请使用ImageIO.
NSMutableArray *frames = nil;
CGImageSourceRef src = CGImageSourceCreateWithData((CFDataRef)data, NULL);
if (src) {
size_t l = CGImageSourceGetCount(src);
frames = [NSMutableArray arrayWithCapacity:l];
for (size_t i = 0; i < l; i++) {
CGImageRef img = CGImageSourceCreateImageAtIndex(src, i, NULL);
if (img) {
[frames addObject:[UIImage imageWithCGImage:img]];
CGImageRelease(img);
}
}
CFRelease(src);
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2495 次 |
最近记录: |