iOS加载大长图的粗暴处理
2016-05-17 本文已影响1527人
水报的疯子
最近用UIScrollView生成了一张大长图,发现用UIImageView直接设置image展示不了。参照了Apple官方的LargeImageDownsizing,内存占用真大,真机就更惨了...后来听说可以用webview,采用html的方式展示,试了一下,效果还不过,代码如下:
1. image生成html函数:
- (NSString *)htmlForJPGImage:(UIImage *)image{ NSData *imageData = UIImageJPEGRepresentation(image,1.f); NSString *imageSource = [NSString stringWithFormat:@"data:image/jpg;base64,%@",[imageData base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength]]; return [NSString stringWithFormat:@"<div align=center><img src='%@' /></div>", imageSource];}
2. 生成html代码:NSString *content = [NSString stringWithFormat:@"<html><body>%@</body></html>", contentImg];
3. web view加载html代码:loadHTMLString
iOS8及其以上使用WKWebView~