UIImage加载内存性能比较

+ (UIImage )imageNamed:(NSString )name

+ (UIImage )imageNamed:(NSString )name 
这种加载会有缓存,图片所占用的内存会一直停留在程序中,name是图片文件名

    UIImage *textviewBackgroundImage= [[UIImage imageNamed:@"service_textview_background.png"] 
  • 1

+ (UIColor )colorWithPatternImage:(UIImage )image

用colorWithPatternImage设置view背景色很占内存,假如考虑兼容iphone的高清图片,如果图本内存占用大概1MB内存, 然后屏幕旋转或者其他的一些需要换图的操作, 这个方法就会重新执行, 执行一次,内存就会加1MB,直至奔溃或闪退!

 self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"background.png"]];
  • 1

+ (UIImage )imageWithContentsOfFile:(NSString)path

此种加载方法无缓存,图片所占用的内存会在一些特定的操作后被清除,path是图片的全路径

   NSString *contentString = [NSString stringWithFormat:@"%@",message.content];
   UIImage *tpImage = [UIImage imageWithContentsOfFile:contentString];
posted @ 2015-10-31 15:47  crash_wu  阅读(290)  评论(0编辑  收藏  举报