在网上看了很多,有关图片处理的文章,有些感觉不错,有些感觉只是说了大概,具体的使用方式没有说出来,这几天正好一个有关图片处理的,这就就和大家说说。
显示关于图片加载问题,由于正在做的项目用到很多图片,加载后内存问题很是头疼,这里是我的经验,大概说一个下。
一般加载图片的方式:
第一种:
NSString * imagePath = [[NSBundle mainBundle] pathForResource:@"pic@.png" ofType:nil inDirectory:nil];
UIImage * image = [UIImage imageWithContentsOfFile:imagePath];
第二种:
UIImage * image = [UIImage imageNamed:picName];
这两种是我经常用到的
用imageWithContentOfFile 加载图片的时候,图片不会做缓存,这样在加载大的图片和使用率低的图片的时候就可以用到。我建议大家使用这种,对控制内存很有帮助。
用imageName的加载的时候,系统会件图像保存在内存中去,下次利用的时候,直接在内存中调用,速度很快,重复利用率高的图片有利于这样做,但是在释放内存的时候比较麻烦,只有程序结束的时候内存才释放,有时候会出现内存警告。。。