2012-09-19 108 views
0

所以,我在我的iOS应用程序中有tableview。我需要填写一些来自网络的图片。首先要从网络上获取这些图像我使用:iOS从网络获取压缩图像

NSData * data = [NSData dataWithContentsOfURL:[NSURL URLWithString:@“http://www.somepicture.jpg”]]; NSImage * image = [[UIImage alloc] initWithData:data];

但问题是这些图像有时很大,所以我需要在下载它之前以某种方式压缩该数据。我需要大约85像素x 85像素的图像。

所以,我的问题是如何通过不下载整个数据从Web获取这些图像。我确信有解决方案,因为我已经在Java for Android上制作了它。或者有其他解决问题的方法。

感谢您的建议!

回答

1

有没有一般的方法来做到这一点。一些网站可能有缩略图可用于他们的图像,但不是全部。如果缩略图可用,则没有标准位置或格式可供您找到,而且也无法让任意Web服务器为您创建缩略图。

(有没有办法做到这一点在Android要么你很可能只是下载整个图像,并缩减了。)

+0

谢谢你的回答,在Andorid的我用这个解决方案发表费多尔,见第二个答案: http://stackoverflow.com/questions/541966/android-how-do-i-do-a-lazy-load-of-i-f-in-listview/3068012#3068012 –

+0

这只是缩小图像 - - 参见'com.fedorvlasov.lazylist.ImageLoader'中的'decodeFile()'函数。它以全分辨率下载。 – duskwuff

+0

是的,我知道这一点,但我不知道如何比posible,当我下载这个解决方案的图片,我测量手机上的传输数据只有大约150KB 20图片?!...图片的整体大小是1MB(服务器上的这些图片的总和)... –