五种创建UIImage的类方法
2015-07-28 10:14
369 查看
iOS开发已开通评论功能
皇天不负有心人,iOS开发的评论功能已经被邀请开通啦。这几天一直想着,微信团队大概在月底的时候会邀请我开通评论功能。果然不出我所料。这是我收到的消息:至此,iOS开发的原创、赞赏、评论三个功能都齐啦,这也是对我辛苦努力的一种肯定。前方的路依然很漫长,我们一起努力,让iOS开发变得更好。
既然评论功能已经开通,大家也别闲着啦!今天的文章大家一起尽情的吐槽吧!
UIImage有五个类方法,用来创建
UIImage的。下面介绍一下每个类方法的作用和创建实例。
1.使用类方法imageNamed:
创建
+ (UIImage *)imageNamed:(NSString *)name; // load from main bundle
name是照片名称。创建UIImage对象,代码如下:
UIImage *image = [UIImage imageNamed:@"ganggang"];
使用
imageNamed:初始化的时候,会先检查缓存中是否存在
ganggang的照片,如不存在,图片首先会被缓存起来,然后才返回要加载的图片对象;如果存在,直接返回要加载的照片对象。
2.使用类方法imageWithContentsOfFile:
创建
+ (UIImage *)imageWithContentsOfFile:(NSString *)path;
path是需要加载照片的路径,如何获取照片的路径请点击iOS开发之获取沙盒路径。实现代码如下:
UIImage *image = [UIImage imageWithContentsOfFile:path];
使用
imageWithContentsOfFile:创建
UIImage的时候,是直接从磁盘上加载。当收到内存警告时,
UIImage对象会被释放,下一次绘图的时候,需要重新加载。
3.使用类方法imageWithData:
创建
+ (UIImage *)imageWithData:(NSData *)data;
data是照片数据,一般是请求返回的,然后通过
imageWithData:创建
UIImage。实现代码如下所示:
NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://www.superqq.com/images/getqrcode.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 NS_AVAILABLE_IOS(5_0);
CIImage是
CoreImage框架中最基本代表图像的对象,在
CIImage被
CIContext渲染出来之前,他是依赖于滤镜链的,滤镜是不会更改
CIImage中的图像数据。
UIImage *image = [UIImage imageWithCGImage:ciImage];
以上四种方法都是
UIImage的类方法,使用
UIImage的初始化方法也是可以创建
UIImage对象的大家可以进
UIImage详细了解一下。
相关文章推荐
- Android 学习笔记 Contacts (一)ContentResolver query 参数详解
- HDU 1711 Number Sequence
- ANDROID L——Material Design详细解释(UI控制)
- UINavigationController返回手势失效问题
- Unable to resolve target 'Google Inc.:Google APIs和Open the Java build path property page of project
- uip UDP 服务器广播模式(客户端可以任意端口,并且主动向客户端发送数据) (转)
- Android GUI 单线程消息队列机制 —— 多线程GUI工具箱:一个破碎的梦
- HDOJ 1711 Number Sequence(KMP简单模板题)
- leetCode 95.Unique Binary Search Trees II (唯一二叉搜索树) 解题思路和方法
- String.valueOf() toString() i+"" 效率
- iOS开发UI篇—懒加载
- 【ZOJ】3889 Making Sequence【构造】
- ubunt tmux X Error of failed request
- Unique Paths II
- ios UITableView和UITableViewIndex
- Android Stuido 好卡怎么办?不要急,兄弟来教你
- Unique Paths
- OPEN(SAP) UI5 学习入门系列之一:扫盲与热身(下)
- OPEN(SAP) UI5 学习入门系列之一:扫盲与热身(下)
- Java simple GUI DEMO