iOS 繪圖時使用 UIGraphicsGetCurrentContext() 報錯的原因分析
<a target="_blank" href="http://blog.csdn.net/opengl_es">轉載請保留此句:太陽火神的美麗人生 - 本部落格專注于 靈活開發及移動和物聯裝置研究:iOS、Android、Html5、Arduino、pcDuino,否則,出自本部落格的文章拒絕轉載或再轉載,謝謝合作。</a>
問題描述:
CGContextRef ctx = UIGraphicsGetCurrentContext();
為什麼會報這個錯誤:is using an invalid context and is thereby contributing to an overall degradation of system stability and reliability
有道翻譯:是使用一個無效的上下文,進而導緻整體退化系統穩定性和可靠性
預設是Nil,在調用 drawRect前,視圖對象會先往棧上壓入一個有效的上下文并使它成為目前上下文。
如果你不是使用UIView對象來做繪畫操作,那麼你就得使用 UIGraphicsPushContext 函數手工往棧上壓入一個有效的上下文了
綜上所述,可能是沒在UIView類的 drawRect 裡面來操作,這個方法是由架構來調用的,調用前,UIView内部會加一個進去!