在网格布局中以单位突出显示所选单元格

时间:2018-05-21 09:43:25

标签: unity3d cell grid-layout

我正在使用一个面板作为网格布局和一个按钮预制布局。我可以为按钮附加事件但我无法弄清楚当用户点击时如何突出显示该按钮那个按钮。当用户点击那个按钮时,有没有办法改变那个克隆按钮的背景颜色?

1 个答案:

答案 0 :(得分:2)

单击按钮时,您可以使用onClick来调用方法。

 public Button btn; 
    void Start () {
        btn.onClick.AddListener(ChangeColor);
    }

或者只是使用编辑器,OnClick列表,请注意,为此,您要调用的方法应该是公共的 enter image description here

if 你只想突出显示当前点击的按钮,当用户点击另一个按钮时,另一个按钮会突出显示,此按钮恢复正常颜色,那么该选项就是在编辑器中可以使用,只需在编辑器中设置按钮的高亮颜色 enter image description here

如果您希望按钮在您点击它们之后更改颜色并且该更改是永久性的,则<
strong> 您只需更改按钮的image属性的颜色,方法是访问其Image属性并将其颜色设置为您想要的颜色。

void changeColor(){
pButton.GetComponent<Image>().color = yourColor;
}

如果您不需要更改按钮中使用的图像颜色,但想要更改按钮normalcolor,首先保留以前的颜色,然后将新颜色设置为{ {1}}

我还认为如果你想使用这种方法,最好更改normalcolor,因为按下按钮后,按下颜色一秒后,它将进入{{ 1}}状态直到你点击另一个按钮,所以我想如果你改变这两种颜色会更好

highlightedColor