【问题标题】:Color a button in Unity在 Unity 中为按钮着色
【发布时间】:2021-12-24 13:28:37
【问题描述】:

我试图通过脚本更改按钮的颜色。我面临一个奇怪的问题。 如果我写
button1.color = new Color(255, 0, 0); 它正确地为按钮着色。但是,如果我更改颜色,例如: button1.color = 新颜色(237, 85, 59); 这个,然后它变成灰或没有颜色。 我是新人,不知道实际问题出在哪里。

【问题讨论】:

  • 您能否为您的问题添加更多细节?就像您正在使用的实际代码一样,例如Button 组件设置的屏幕截图以及它在 GameView 等中的外观
  • 你应该使用button1.GetComponent<Image>().color = desiredColor 假设 button1 是 Button 类型并且所有组件都是默认的。
  • @Ankit 实际上不是...Button 组件有一个colors 属性,它是一个ColorBlock,只要按钮状态发生变化(正常,悬停),它就会覆盖相应的Image 颜色,按下,禁用)......没有更多细节很难回答这个问题;)
  • 颜色不应该是 0 到 1 而不是 0 到 255?第一个很好,因为它是全红,另一个可能是全黑。

标签: c# unity3d button colors


【解决方案1】:

Color 构造函数接受 4 个值:红色、绿色、蓝色和 alpha。值在 0.0f 和 1.0f 之间,而不是

button1.color = new Color(237, 85, 59);

写一些类似的东西

button1.color = new Color(0.93f, 0.33f, 0.23f, 1.0f)

从 RGB 0 - 255 值中获取 0.0 - 1.1 值的方法是将颜色值除以 255。希望这能回答您的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-28
    • 2012-04-20
    • 2018-12-22
    • 1970-01-01
    • 2014-08-03
    • 1970-01-01
    • 2015-08-20
    • 2014-12-18
    相关资源
    最近更新 更多