你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> 有關coreGraphics

有關coreGraphics

編輯:IOS開發綜合

coreGraphics 關於IOS只能在drawRect中運用,由於只要在drawRect辦法中可以經過UIGraphicsGetCurrentContext辦法獲取到可以用來繪圖的context。

1.重新繪圖相關辦法和屬性

經過UIView的setNeedsDisplay或setNeedsDisplayInRect:來使view重新調用drawRect辦法停止繪圖。

contentMode 該屬性是定義當UIView的bounds變化的時分,如何去規劃其內容。其中個就有一個可選項是UIViewContentModeRedraw,可以使得在UIView的bounds發作變化的時分再次調用drawRect停止重畫。

2.CGLayer和CALayer的用法思緒有點不同

關於Context來說,CGlayer對象與transparency layer對象,CGPath對象,以及運用CGContext辦法創立的path,處在同等位置。

與CALayer不同,CGLayer更像是一個小的繪圖元素,通常在需求反復同一個圖像,比方一張桌布上的小碎花,就把小碎花畫在CGLayer對象上,然後將CGLayer對象屢次添加到context上。
CGLayer需求用Context來創立(辦法是CGLayerCreateWithContext),這樣CGLayer的屬性就曾經設置成和context分歧,無需手動設置太多。當然自己也可以去改。

創立好CGLayer對象之後, 要在layer上作畫還要先獲取該layer對象的context,經過CGLayerGetContext辦法,然後獲取到context之後就可以開端在layer上畫了,辦法同畫在其他context一樣。

最後,就可以將這個layer添加到所需的中央,通常就是某個context上,往往會是創立這個layer的context,也不一定,只不過將layer添加到與其本身context分歧的context上功能更好,apple的文檔上這麼說。將layer添加到context可以用辦法CGContextDrawLayerInRect或CGContextDrawLayerAtPoint。

【有關coreGraphics】的相關資料介紹到這裡,希望對您有所幫助! 提示:不會對讀者因本文所帶來的任何損失負責。如果您支持就請把本站添加至收藏夾哦!

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved