码迷,mamicode.com
首页 > 其他好文 > 详细

imageNamed、imageWithContentsOfFile、imageWithData

时间:2015-12-23 21:12:19      阅读:278      评论:0      收藏:0      [点我收藏+]

标签:

[UIImage imageNamed:ImageName];

1、加载图片占据的内存较大

2、相同的图片只会加载一份到内存中,如果同时使用,使用同一个对象即可

3、当对象销毁,图片对象不会随着一起销毁

 

NSString *path = [[NSBundle mainBundle] pathForResource:@"icon" ofType:@"png"];

myImage = [UIImage imageWithContentsOfFile:path];

1、加载图片占据的内存较小

2、相同的图片会多次加载到内存中,如果同时使用图片,使用的是不同的对象

3、当对象销毁,图片对象会随着一起销毁

 

NSString *filePath = [[NSBundle mainBundle] pathForResource:fileName ofType:extension];

NSData *image = [NSData dataWithContentsOfFile:filePath];

[UIImage imageWithData:image];

1、加载的图片会以数据的方式加载到程序。

2、当你不需要重用该图像,或者你需要将图像以数据方式存储到数据库,又或者你要通过网络下载一个很大的图像时,请尽量使用imageWithData的方式加载图像。

 

无论用哪种方式加载图像,图像使用结束后,一定要记得显示释放内存。

 

总结:

imageNamed:如果一些图片在多个界面都会使用,并且图片较小,使用频率高(图标/小的背景图)

imageWithContentsOfFile:只在一个地方使用,并且图片较大,使用频率不高(版本新特性)

imageNamed、imageWithContentsOfFile、imageWithData

标签:

原文地址:http://www.cnblogs.com/sjxjjx/p/5071189.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!