加载时Swift改变图像的颜色
Posted
技术标签:
【中文标题】加载时Swift改变图像的颜色【英文标题】:Swift changes colour of image when loaded 【发布时间】:2016-07-12 02:11:10 【问题描述】:我在 Xcode 7.3.1 中有一个快速的操场,我正在尝试使用 let mouth = UIImage(named: "happy-mouth")
将此图像 加载到我的程序中。当程序运行时,swift编译器会返回这样的图像......
为什么 swift playground 将图像的颜色改为栗色而不是桃色?
我尝试过的事情
检查图片名称是否为“happy-mouth.png”
快速检查图片是否在我的资源文件夹下
重启 Xcode
谷歌搜索我的问题并在 *** 上搜索它
【问题讨论】:
图片可能是透明的?如果将其添加到 UIImageView 并将背景颜色设置为白色怎么办? 谢谢,我刚刚意识到图像是部分透明的,愚蠢的我,我应该检查一下。 【参考方案1】:这是透明图像的常见问题。因为它们通常显示在 UIImageView
中,它从其父视图(父视图)继承背景颜色,通常是白色,您不会注意到这一点。
不要修改图像,而是将其放入UIImageView
并将背景颜色(UIImageView
)设置为白色。
【讨论】:
【参考方案2】:问题很可能是您拥有的图像是部分透明的,因为与它在白色背景上的显示方式相比,它与背后的深色混合在一起改变了它的显示方式。要解决此问题,请返回您的图像编辑器(例如草图、photoshop、illustrator)并使颜色不透明。
【讨论】:
我认为最好在 Xcode 中更改它(通过UImageView
的背景颜色)并保持图像不变。
这绝对是一个好主意,但是对于我正在做的事情来说,它并不是很实用。我正在使用 UIGraphicsImageContext 从多个图像创建一个图像。以上是关于加载时Swift改变图像的颜色的主要内容,如果未能解决你的问题,请参考以下文章
在 Swift 中按下 uibutton 时更改色调图像颜色