//在oc中imageView加载图片的方式很多种,可以通过存储的路径、图片的名称、data类型转换、网络加载等等。
//代码中生成UIImage对象的时候,常见的有下面两种方法,个人理解,望大家指正
//1.使用image的name加载图片,这样的方式特点就是在第一次加载该图片的时候是从该图片的存放路径加载,有可能是assets文件夹,也有可能是工程下的某个文件夹。但是第二次执行这行代码的时候,是从当前App的缓存中寻找该图片对象加载。这个缓存的生命周期就是从第一次加载该图片直到app结束运行。如果需要多次加载高清(图片较大)图片的时候,选择这样的方式是比较好的,但是对于那些在整个app中只加载一次的大图片,这个方式便不是一个明智的选择。再就是特大图片,要根据实际情况选择使用哪种方式。
UIImage * imageName = [UIImage imageNamed:@"launch_image"];
//2.使用下面的方式加载图片,特点是只加载图片,不会产生缓存,特点是每次执行下面的代码,加载图片的路径和方式都是和第一次执行代码机制是一样的。相比上面加载图片的方式而言,它的适用情况就非常清晰了。
NSString * path = [[NSBundle mainBundle] pathForResource:@"launch_image" ofType:@"png"];
UIImage * imagePath = [UIImage imageWithContentsOfFile:path];