5种创建UIImage的类方法

本文介绍了五种创建UIImage对象的方法:使用imageNamed:方法从缓存加载图片;使用imageWithContentsOfFile:方法直接从磁盘加载图片;使用imageWithData:方法通过图片数据创建UIImage;使用imageWithCGImage:方法通过CGImageRef创建UIImage;使用imageWithCIImage:方法通过CIImage创建UIImage。

 1. 使用类方法imageNamed:创建

+(UIImage *)imageNamed:(NSString *)name;

name是照片名称。创建UIImage对象 ,代码如下:

UIImage *image = [UIImage imageNamed:@"Jihong"];

使用imageNamed:初始化的时候,会先检查缓存中是否存在Jihong的照片,如果不存在,图片首先会被缓存起来,然后才返回要加载的图片对象;如果存在,直接返回要加载的照片对象。



2.使用类方法imageWithContentsOfFile:创建

+(UIImage*)imageWithContentOfFile:创建

path是需要加载照片的路径,如何获取照片的路径应该获取沙盒路径。实现代码如下:

UIImage *image = [UIImage imageWithContentOfFile:path];

使用imageWithContentOfFile:创建UIImage的时候,是直接从磁盘上加载。当收到内存警告时,UIImage对象会被释放,下一次绘图的时候,需要重新加载。



3.使用类方法imageWithData:创建

+(UIImage*)imageWithData:(NSData *)data;

data是照片数据,一般是请求返回,然后通过imageWithData:创建UIImage。实现代码如下所示:

NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://www.baidu.com/images.jpg"] ];

UIImage *image = [UIImage imageWithData:data];



4.使用类方法imageWithCGImage:创建

+(UIImage*)imageWithCGImage:(CGImageRef)cgImage;

cgImage 是定义在QuartzCore框架中的一个结构体指针。这个结构用来创建像素位图,可以通过操作存储的像素位来编辑图片

UIImage *image = [UIImage imageWithCGImage:cgImage];



5 使用类方法imageWithCIImage:创建

+(UIImage*)imageWithCIImage:(CIImage*)ciimage

CIImage 是CoreImage框架中最基本代表图像的对象,在CIImage被CIContext渲染出来之前,他是依赖于滤镜链的,滤镜是不会更改CIImage中的图像数据。

UIImage *image = [UIImage imageWithCGImage:ciImage];

以上四种方法都是UIImage的类方法,使用UIImage的初始化方法也是可以创建UIImage对象的。












评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值