你的位置:首页 > 操作系统

[操作系统]简单阐述下OC中UIImage三种创建方式~~~


一. 直接使用imageNamed进行创建

 1 UIImage * image = [UIImage imageNamed:@"1.jpg"]; 

简单说一下这种方式的优缺点:

优点:代码量少,一行代码就可以搞定。当程序中多次加载这张图片时,系统会指向同一块内存,这样可以提升效率。

缺点:系统每次会将图片缓存到计算机的内存中去,如果图片非常大,非常多,会消耗很大的计算机内存,会出现卡顿的现象。

 

二.将本地图片转换成NSData类型存储

1   NSString *filePath = [[NSBundle mainBundle]pathForResource:@"1" ofType:@"jpg"];2   NSData *imageData = [NSData dataWithContentsOfFile:filePath];3   UIImage *image1 = [UIImage imageWithData:imageData];

优点:图片会被系统以数据的方式加载到程序中,当你不需要重复使用一个图片或者你需要加载大量的图片,不会大量消耗计算机内存,使用这种方式。

缺点:代码量较多,没有第一种简单。

 

三.通过NSURL获取网络图片

1   NSURL *url = [NSURL URLWithString:PATH];2   NSData *imageData = [NSData dataWithContentsOfURL:url];3   UIImage *image = [UIImage imageWithData:imageData];

上面的PATH是网络图片的地址。

这种方式的优缺点跟第二种应该是一样的,区别就在于获取图片的方式不一样。

 

写的东西非常简单,希望大家能够多多互相交流学习~谢啦~