当前位置: 代码迷 >> 综合 >> 【IOS 开发学习总结-OC-63】UIImage 与 CGImage,CGImageRef
  详细解决方案

【IOS 开发学习总结-OC-63】UIImage 与 CGImage,CGImageRef

热度:30   发布时间:2024-01-19 01:25:12.0

【IOS 开发学习总结-OC-63】UIImage 与 CGImage,CGImageRef

UIImage 专门用来显示各种位图,支持的图片格式有:
这里写图片描述

当系统内存紧张时,UIImage会将图片数据从UIImage对象中清理出去来节省内存使用——但不清理对象本身。当程序使用一个图片被清理后的UIImage对象时,该UIImage会自动从原始的图片文件中加载图片数据。

注意:尽量避免UIImage加载过大(比如1024x1024)的图片,如果实在需要加载这种大图片,可以考虑将图片分解成多张小图进行加载。

用UIImage显示静止的图片,可以使用UIImage提供的如下常用类方法:
1. + (nullable UIImage *)imageNamed:(NSString *)name; // load from main bundle ——用于加载指定文件名对应的图片。该方法有缓存机制,如果该方法试图加载的图片文件不存在,它才会去加载并缓存图片文件;如果已经缓存过,该方法将直接使用已缓存的图片。

说明:若程序需要频繁的加载,卸载图片时,不该使用该方法加载图片。

  1. + (nullable UIImage *)imageWithContentsOfFile:(NSString *)path;——加载指定文件名对应的图片
  2. + (nullable UIImage *)imageWithData:(NSData *)data;——根据NSData封装的图片数据来创建图片