如何检查切换是否已切换,然后激活对象作为响应?



我们正在与Unity合作开展一个学校项目,Unity对我们来说是一个新环境,C#对我们来说是一种新语言。

我们在为 Unity UI 中的切换按钮编写脚本时遇到问题。本质上,我们要检查是否已单击切换按钮,然后激活路径对象,使它们可见。

我们正在使用Toggle.interactable脚本作为切换按钮。我们知道,如果单击切换开关,您必须使用SetActive(true)来激活路径,但我们不确定应该使用什么来检查它是否是。

> 切换发出一个名为onValueChanged的事件,每当切换值更改时都会触发该事件。您将侦听此事件,检查它是否已变为 true,并将游戏对象设置为活动状态。因此,在将侦听此事件的脚本中,我们将设置一个侦听器。文档中修改的示例

public class Example : MonoBehaviour
{
Toggle m_Toggle;
void Start()
{
//Fetch the Toggle GameObject
m_Toggle = GetComponent<Toggle>();
//Add listener for when the state of the Toggle changes, to take action
m_Toggle.onValueChanged.AddListener(delegate {
ToggleValueChanged(m_Toggle);
});
}
//Output the new state of the Toggle into Text
void ToggleValueChanged(Toggle change)
{
//Activate your game object
}
}

在脚本中获取切换按钮并使用isOn布尔值。使用以下脚本在运行时观察值。

public Toggle myToggle;
void Update()
{
print("Current Toggle State : " + myToggle.isON);
}

最新更新