imageWithContentsOfFile与imageNamed使用注意事项

项目中存放图片一般有两种方式,一种是直接放在Assets.xcassets中,另一只则是放在如下所示的一个虚拟文件夹中.


图片资料

加载图片一般常用的方法以下两种

/* 方法一*/
[UIImage imageWithContentsOfFile:];
 /*方法二*/
 [UIImage imageNamed:];

在加载资源上面:
方法一只能加载Bundle中虚拟文件夹下的图片;
方法二既可以加载Bundle中虚拟文件夹下的图片也可以加载Assets.xcassets中的图片;

其实原因很简单,因为用户从App Store下载下来的ipa包Assets.xcassets被压缩为了Assets.car,苹果公司只允许方法二中的方法访问该资源.


ipa包中的图片资源文件

方法一加载图片:
a:指向该图片的指针被干掉,该资源也会被干掉,不会在内存中留有缓存
b:不经常用,大批量的图片可以通过该方法加载到项目中

方法二加载图片:
a:指向图片的指针被销毁,该资源也不会从内存中被干掉
b:放到Assets.xcassets的图片,默认有缓存
c:经常用的图片,放在Assets.xcassets中,通过此方式加载图片

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容