原文:http://blog.sina.com.cn/s/blog_6f40023401014av7.html#cmt_2501839
最近做的一個項目需要使用[view.layer renderInContext:context]方法把view繪到畫布上,功能實現(xiàn)后發(fā)現(xiàn),只要循環(huán)多畫幾個view 內(nèi)存就會爆掉。。檢測了下內(nèi)存使用情況,發(fā)現(xiàn)是這個方法導(dǎo)致內(nèi)存直線上升,然后爆掉。Google后發(fā)現(xiàn)解決辦法如下:
在[view.layer renderInContext:context]之后加上一句:view.layer.contents = nil; 就可以解決,據(jù)stackoverflow里的人說這樣是用來清除 layer繪過后的緩存。當(dāng)然了 循環(huán)里放上一個NSAutoReleasePool也是需要的。。。