项目中使用到了这个方法colorWithPatternImage,一般的写法是
self.vIEw.backgroundcolor = [UIcolor colorWithPatternImage:[UIImage imagenamed:@"background.png"]];由于是公司内部产品,要求兼容IOS系统3.0-5.0,所以拿了各种版本机器测试! 发现这个方法在有一些系统上内存泄漏,直到奔溃!
要考虑iphone4高清,这个图本身在内存占用大概2MB内存,然后屏幕旋转或者其他的一些需要换图的 *** 作,这个方法就会重新执行一边,内存就++2MB,不一会儿就奔溃了!
当然并非所有的系统都有这个问题! 可能是系统的一个BUG,模拟器调试没任何问题,我的iphone4,4.3.3系统没问题!
由于机器有限,部分测试结果如下,希望能帮助一些人:
iphone4 都没问题
iphone3gs 4.2.1系统和4.1有问题,4.3没问题
iphone3 4.2.1系统有问题,3.1系统没问题
ipad 3.2系统没问题
国外的一些用户也发现了这个问题,解决的方法就是不用这个方法设置背景颜色罗!
http://www.cocoabyss.com/Coding-practice/colorwithpatternimage-abusive-memory-usage/
http://www.tuzzolotron.com/?p=118
总结以上是内存溢出为你收集整理的关于colorWithPatternImage内存泄漏全部内容,希望文章能够帮你解决关于colorWithPatternImage内存泄漏所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)