IOS - UIImage加载内存性能比较

+ (UIImage )imageNamed:(NSString )name

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

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

+ (UIColor )colorWithPatternImage:(UIImage )image

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

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

+ (UIImage )imageWithContentsOfFile:(NSString)path

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

   NSString *contentString = [NSString stringWithFormat:@"%@",message.content];
   UIImage *tpImage = [UIImage imageWithContentsOfFile:contentString];

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。