天天看點

設定UIImage的渲染模式:UIImage.renderingMode

設定UIImage的渲染模式:UIImage.renderingMode

着色(Tint Color)是iOS7界面中的一個.設定UIImage的渲染模式:UIImage.renderingMode重大改變,你可以設定一個UIImage在渲染時是否使用目前視圖的Tint Color。UIImage新增了一個隻讀屬性:renderingMode,對應的還有一個新增方法:imageWithRenderingMode:,它使用UIImageRenderingMode枚舉值來設定圖檔的renderingMode屬性。該枚舉中包含下列值:

  1. UIImageRenderingModeAutomatic  // 根據圖檔的使用環境和所處的繪圖上下文自動調整渲染模式。  
  2. UIImageRenderingModeAlwaysOriginal   // 始終繪制圖檔原始狀态,不使用Tint Color。  
  3. UIImageRenderingModeAlwaysTemplate   // 始終根據Tint Color繪制圖檔,忽略圖檔的顔色資訊。  

renderingMode屬性的預設值是UIImageRenderingModeAutomatic,即UIImage是否使用Tint Color取決于它顯示的位置。其他情況可以看下面的圖例

設定UIImage的渲染模式:UIImage.renderingMode

以下的代碼說明了使用一個既定的rendering模式建立圖檔是多麼簡單:

  1. UIImage *img = [UIImage imageNamed:@ "myimage" ]; 
  2. img = [img imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate]; 

轉載于:https://my.oschina.net/u/2433745/blog/626501