UIGraphicsBeginImageContextWithOptions(view.bounds.size, YES, 0);
[view.layer renderInContext:UIGraphicsGetCurrentContext()]; //截圖
UIImage *tempImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
在本代碼中毯侦,有兩個(gè)需要注意的有可能關(guān)系到內(nèi)存的問題
- 內(nèi)存問題樊销,不會(huì)產(chǎn)生在
UIGraphicsGetImageFromCurrentImageContext()
這行代碼中
因?yàn)?code>UIGraphicsGetImageFromCurrentImageContext()返回的是一個(gè)
autorelease
的UIImage
對(duì)象
- 一定要對(duì)應(yīng)
UIGraphicsBeginImageContextWithOptions()
和UIGraphicsEndImageContext ()
因?yàn)?code>UIGraphicsBeginImageContextWithOptions()會(huì)在函數(shù)體內(nèi)部通過
CGBitmapContetAlloc
內(nèi)部函數(shù)分配內(nèi)存空間涩盾,而UIGraphicsEndImageContext ()
的作用就是釋放該空間。