OC学习54:imageNamed和imageWithContentsOfFile区别?
使用imageNamed:加载图片
我们都是把 切图放在Images.xcassets
里面
1 | UIImage * img = [UIImage imageNamed:@"XXX"]; |
使用imageWithContentsOfFile
1 | // 全局宏 : 可以在 pch 文件中定义一个宏,在整个项目中使用 |
两者区别
- imageNamed:
- mageNamed加载图片,并且把image缓存到内存里面
- 在图片使用完成后,不会直接被释放掉,具体释放时间由系统决定,适用于图片小,常用的图像处理
适用范围:UITableViewCell、UICollectionCell 等频繁加载同一个图标等
- imageWithContentsOfFile
- imageWithContentsOfFile是只显示图片,但不加到内存中。
- 如果要释放快速释放图片,可以使用[UIImage imageWithContentsOfFile:path]实例化图像
适用范围:大图片
比如像引导页那种占了几乎满屏的图,并且 复用率很低
其他
Images.xcassets中的素材
只支持png格式的图片
图片只支持
[UIImage imageNamed]
的方式实例化,但是不能从Bundle中加载在编译时,
Images.xcassets
中的所有文件会被打包为Assets.car
的文件
- Post title:OC学习54:imageNamed和imageWithContentsOfFile区别?
- Post author:张建
- Create time:2023-05-30 14:22:01
- Post link:https://redefine.ohevan.com/2023/05/30/OC/OC学习54:imageNamed和imageWithContentsOfFile区别?/
- Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.