unity UI 按钮预制更改附加图像的颜色?

问题描述 投票:0回答:1

我有一个预制按钮。我想将它实例化为一个游戏对象。按钮默认附加一个组件。我想访问它并在实例化时分配颜色。我尝试了几种方法但出现了错误。那么有什么方法可以改变实例化预制件的图像颜色呢?

作为 2d UI 元素,它呈现在画布中。

[SerializeField] GameObject button;

GameObject child = Instantiate(button, new Vector2(0,0), Quaternion.identity);
//error: not a monobehavior object.
//Image rend = child.GetComponent<Image>();
//rend.tintColor = Color.blue;

//no renderer.
 // Renderer boxRenderer = child.transform.GetComponent<Renderer>();
 // boxRenderer.material.color = Color.blue;

 //child.setparent();

c# unity3d
1个回答
0
投票

您很可能不小心在脚本中使用了错误的

Image
类,例如在
UnityEngine.UIElements.Image
System.Drawing.Image
中定义的类,或者您自己的项目中名为
Image
的类。

你正在使用 UGUI 组件(来自

UnityEngine.UI
命名空间),所以你想使用
UnityEngine.UI.Image
。仔细检查您正在使用的
Image
类,并进行必要的更改以确保您使用的是正确的类。然后你可以改变它的
color
属性。

© www.soinside.com 2019 - 2024. All rights reserved.