图片放在Resource和ImageAssets中有什么区别

1.放在Resource中

Resource里的图片每次使用,都会到沙盒中读取这个图片文件,转成UIImage对象来使用,使用之后就会释放占用的内存。适合放占用内存大且不会频繁使用的图片。

2.放在imageAssets中

imageAssets中的图片会在第一次读取时放在内存中,其他地方使用会从字典缓存中获取同一个UIImage对象,且在整个App的声明周期中都不会释放;适合放占用内存小(3-20kb)的且频繁使用的图片。

3.示例:

一张图片 7kb,在5个地方会用到;resource会占用35kb内存,imageAssets占用7kb
一张图片300kb,在一个地方会用到;resource会在使用后会清除300kb内存,imageAssets会一直占用300kb内存

你可能感兴趣的:(图片放在Resource和ImageAssets中有什么区别)