設(shè)置UIImage的渲染模式(如何保持UIImage的原色不變)

設(shè)置UIImage的渲染模式:UIImage.renderingMode

著色(Tint Color)是iOS7界面中的一個(gè).設(shè)置UIImage的渲染模式:UIImage.renderingMode重大改變,你可以設(shè)置一個(gè)UIImage在渲染時(shí)是否使用當(dāng)前視圖的Tint Color。UIImage新增了一個(gè)只讀屬性:renderingMode,對應(yīng)的還有一個(gè)新增方法:imageWithRenderingMode:,它使用UIImageRenderingMode枚舉值來設(shè)置圖片的renderingMode屬性。該枚舉中包含下列值:

UIImage *image = [UIImage imageNamed:@"hf"];

image = [image imageWithRenderingMode:(UIImageRenderingModeAlwaysOriginal)];

UIImageRenderingModeAutomatic? // 根據(jù)圖片的使用環(huán)境和所處的繪圖上下文自動調(diào)整渲染模式。UIImageRenderingModeAlwaysOriginal???//?始終繪制圖片原始狀態(tài),不使用Tint?Color。UIImageRenderingModeAlwaysTemplate???//?始終根據(jù)Tint?Color繪制圖片,忽略圖片的顏色信息。

renderingMode屬性的默認(rèn)值是UIImageRenderingModeAutomatic,即UIImage是否使用Tint Color取決于它顯示的位置。

現(xiàn)在不設(shè)置UIImage的渲染模式

代碼:

self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]initWithImage:[UIImage imageNamed:@"hf"] style:(UIBarButtonItemStylePlain) target:nil action:nil];

運(yùn)行效果截圖:

圖片的顏色是感覺原本是綠色的,他是根據(jù)圖片所處的環(huán)境而改變圖片的渲染顏色

現(xiàn)在保持圖片的原來狀態(tài)

代碼:

UIImage *image = [UIImage imageNamed:@"hf"];;

image = [image imageWithRenderingMode:(UIImageRenderingModeAlwaysOriginal)];

self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]initWithImage:image style:(UIBarButtonItemStylePlain) target:nil action:nil];

運(yùn)行效果截圖:


圖片的顏色保持原本的顏色
其他的渲染模式可以自己嘗試.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容