【发布时间】:2013-09-01 15:20:02
【问题描述】:
我正在使用此代码将图像从 URL 显示到 UIImageview
UIImageView *myview=[[UIImageView alloc]init];
myview.frame = CGRectMake(50, 50, 320, 480);
NSURL *imgURL=[[NSURL alloc]initWithString:@"http://soccerlens.com/files/2011/03/chelsea-1112-home.png"];
NSData *imgdata=[[NSData alloc]initWithContentsOfURL:imgURL];
UIImage *image=[[UIImage alloc]initWithData:imgdata];
myview.image=image;
[self.view addSubview:myview];
但问题是在 imageview 中显示图像需要很长时间。
请帮帮我...
有什么方法可以加快进程...
【问题讨论】:
-
当这完全取决于所用网络的强度时,您如何期望代码能够更快地下载数据。
-
您可以按照其他答案的建议使用 GCD,但这同样慢,只是不会冻结应用程序。
-
我花了大约 3 秒来加载图像。您是一次单独加载此图像还是并行运行更多下载?您可以使用一些更快的图像下载服务吗?是否可以选择加载较小的图像文件(以像素为单位的较小尺寸)?您可以切换到高度压缩的 JPEG 吗?您可以使用启用某些缓存的框架(我认为 NSData 不会这样做)。这是一个选择吗?含义:您是否一次又一次地加载相同的图像?
-
@HermannKlecker 我们正在为应用程序使用不同的图像...
-
@HermannKlecker 关于在使用移动设备时下载某个资源需要多长时间的陈述总是毫无意义。建立连接可能需要长达 15 秒的时间。正确的方法是为用户提供更好的体验,无论需要多长时间。
标签: iphone ios objective-c path uiimageview