我正在为用户创建一个菜单。我已经添加了Canvas元素。它有一些文本元素作为它的子元素。其中一个文本元素添加了Button组件。
我希望这个文本按钮在突出显示时更改它的颜色,但我不能,因为目标图形缺失:“你必须有一个Graphic目标才能使用颜色过渡”。
如何解决?
答案 0 :(得分:1)
您应该转到menu
并搜索GameObject
标签,转到UI
- > Button
。
这样,Unity会自动创建包含多个子节点的Button
GameObject
,每个子节点都有一个组件(文本,图形等等)。
比自己创建和手动添加组件更快,并且不会遗漏任何组件。
答案 1 :(得分:0)
using UnityEngine.EventSystems;
using UnityEngine.UI;
public class Test : MonoBehaviour , IPointerEnterHandler, IPointerExitHandler
{
public Text text;
public void OnPointerEnter (PointerEventData eventData)
{
text.color = Color.white;
}
public void OnPointerExit (PointerEventData eventData)
{
text.color = Color.black;
}
}
使用事件系统,您可以控制要做什么和何时做。只需添加接口并实现方法即可。不要忘记命名空间。
答案 2 :(得分:0)
Unity希望您将一个Image组件添加到该对象并将其放在Target Graphic字段中。只需转到检查器中的“添加组件”,搜索图像,然后将其放入“目标图形”即可。