2011-02-15 131 views
0

我加载尺寸1800x1300的图像UIImage的。(从服务器获取图像。)然后我加入了该图片为Uiscrollview.while滚动我的图片,应用程序越来越crashed.is它的图像大小问题.....?提前致谢。大图像尺寸的问题

+0

这将是大约9MB在设备内存那么我认为这不是impossibile到iOS应用程序中处理它(即使是旧设备)。这取决于您的应用程序的其余部分,并更好地管理内存,让应用程序在映像到来时释放一些空间。 – lomanf 2011-02-15 06:31:10

+0

你的图像太大了,因为你需要这个尺寸来显示你的'UIScrollView`中的一些细节,或者只是因为你得到它的样子?因为如果你不需要这个尺寸,你可以在获取它之前调整服务器端的图像大小。 – lomanf 2011-02-15 06:37:20

回答

0

你绝对应该扩展您的图片了,显著,特别是为iPhone的屏幕尺寸。

你也应该压缩您的图像就像你可以在不影响质量。我假设你的图像大约在1.5MB到2MB之间,这样如果内存足够用了,就会导致你的设备每次都崩溃。

+0

ya.thank你..但我怎么能缩放我的图像....?使用UIGraphicsBeginImageContext(newSize); [图像drawInRect:CGRectMake(0,0,newSize.width,newSize.height)]; 的UIImage * newImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); ..........? – Madhumitha 2011-02-15 05:45:13

1
UIImage *image = [UIImage imageNamed:@"image.png"]; 
NSData *imgData = UIImageJPEGRepresentation([UIImage imageWithCGImage:[image CGImage]],0.5); 
UIImage *compressedImage = [UIImage imageWithData:mgData];