[英]How to change UIImage color in iOS?
你可以這樣做,但你的圖片必須是 png,
UIImage *img = [UIImage imageNamed:@"ic_email_white_48dp_2x.png"];
self.myImageView.image = [img imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];
self.myImageView.tintColor = [UIColor blackColor];
我的圖像是白色的,當我設置 tintcolor 時它變成了黑色。 同樣,您可以設置不同的不同顏色。 UIImageRenderingModeAlwaysTemplate
是此功能的核心。
希望這會有所幫助。 :)
不,您應該使用不同的圖像,並根據選擇的顏色按鈕切換圖像。 使用 Adobe Photoshop 或類似工具准備不同的圖像,然后將它們上傳到 XCode。 然后,當用戶選擇 buttonColor1 時,您使用 self.imageView.image = [UIImage imageNamed:@"redColor"]; 例如..
您必須向按鈕添加一個動作,向圖像視圖添加一個出口。 在按鈕操作中,您將圖像設置為圖像視圖。 鐵
action redbutton{
imageview.image = UIImage("greenimage.png")
}
action redbutton{
imageview.image = UIImage("redimage.png")
}
這不是正確的代碼。 只是給你一個想法。
編輯:為了說清楚。 您無法更改圖片的“UIColor”以獲得您正在尋找的結果。 您需要為襯衫的每種顏色提供不同的圖像,並且您只需在按鈕的操作方法中實現圖像的更改。
正如@Anton 和@David 所說,更改 UIImage 顏色是不可能的。 唯一的方法是添加不同顏色變體的單獨圖像。
您可以嘗試使用基本圖像作為模板圖像,然后相應地更改色調顏色。 對於您擁有的用例類型,這可能不足以滿足您的需求,但您可以嘗試。 這將取決於您的原始基本圖像。
要設置原始圖像:
if let tshirtimage = UIImage(named: "tshirtbase") {
imageView.image = tshirtimage.imageWithRenderingMode(.AlwaysTemplate)
}
然后,在每種顏色的按鈕代碼中,您可以像這樣更改顏色:
imageView.tintColor = UIColor.redColor()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.