关于uiimage imagenamed内存可能占用大的替代方法

刚才和群里人讨论,确实需要慎用  

[UIImage imageNamed:@"GcBg.png"]   这个方法,因为它可能有缓存,会占用较大的内存。所以小图的话还行,大图的话就别用这个方法了,群里兄弟推荐大图用这个方法:

[[UIImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:[NSString stringWithFormat:@"xxx", imageIndex] ofType:@"png"]];



再啰嗦一句:

还在看敢吃的项目,项目里的代码都是这一句:

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

但我在工程中并未找到 GcBg.png  这张图片,只有一个带后缀的 [email protected] ,群里兄弟的解释是:

代码里不需要加后缀,只需要在工程中加上后缀,然后如果是高清屏的话它就会自动去匹配 @2x 这种图片,如果你工程中只有 @2x 图片,而代码是用上种写法的话那么普通屏是无法加载到图片的(所以一般推荐工程中要弄三张图:普通的,@2x,-568的

你可能感兴趣的:(关于uiimage imagenamed内存可能占用大的替代方法)