今天早上我的Button.Image.Color有问题
这是我真正简单的代码:
this.gameObject.GetComponent<Image>().color = Color.Red;
所以这行代码完美地工作了...现在,我试图用同样的简单代码行在按钮上使用自己的颜色:
this.gameObject.GetComponent<Image>().color = new Color(106, 174, 23);
好吧,颜色实际上发生了变化...没有变化...让我们在游戏运行时引用对象本身:
如您所见,颜色改变了,但保持白色。
我在这里查看了很多帖子,但是看来我做得对,显然有一个错误,否则它可以正常工作,但是即使阅读了很多帖子,似乎我也看不到解决方案靠我自己。
答案 0 :(得分:2)
Color的构造函数接受从0到1的浮点数。
您正在将它们设置为1(大于1的任何设置为1)。 1,1,1 =白色。
this.gameObject.GetComponent<Image>().color = new Color(0.415f, 0.682f, 0.09f);
这应该为您提供所需的结果。
数字是通过将值除以255生成的
或者,您也可以解析自己的十六进制值:
if(Color.TryParseHtmlString("#75BF1A", out myColor))
{
this.gameObject.GetComponent<Image>().color = myColor;
}
答案 1 :(得分:1)
您好,感谢您的回答,确实Color需要从0到1的数字。
只需添加到您的答案中,我发现Color32是我应该使用的颜色,因为它需要使用0-255个值。
再次感谢您度过美好的一天!