Unity3d 切换以激活/停用游戏对象

Unity3d 切换以激活/停用游戏对象,unity3d,toggle,Unity3d,Toggle,我在一个项目中工作,我希望面板中的一系列切换代表一个操作清单。基本上,当操作员按下切换按钮时,我希望一些游戏对象消失:问题是对OnValueChanged的正常调用不起作用,因为有多个切换,每个切换都应该停用/激活特定的游戏对象。现在,当我按下第一个切换时,其他切换的效果同时被渲染。它们都是以禁用的方式启动的,我希望玩家一步一步地检查每个切换。有什么想法吗?现在,开关的工作原理是一样的,即使它们都是IsOn=false,也不应该是这样,至少不能同时工作。谢谢 要检查游戏对象是否处于活动状态,可以

我在一个项目中工作,我希望面板中的一系列切换代表一个操作清单。基本上,当操作员按下切换按钮时,我希望一些游戏对象消失:问题是对OnValueChanged的正常调用不起作用,因为有多个切换,每个切换都应该停用/激活特定的游戏对象。现在,当我按下第一个切换时,其他切换的效果同时被渲染。它们都是以禁用的方式启动的,我希望玩家一步一步地检查每个切换。有什么想法吗?现在,开关的工作原理是一样的,即使它们都是IsOn=false,也不应该是这样,至少不能同时工作。谢谢

要检查
游戏对象
是否处于活动状态,可以使用检查
游戏对象
的当前状态,然后根据该状态将其打开或关闭

切换功能:

public void ToggleGameObject(GameObject go){
if(go.activeSelf){
go.SetActive(false);
}
否则{
go.SetActive(true);
}
}

在您的例子中,函数调用看起来像这样。您可以添加多个切换函数和多个
GameObject
引用,因为它们都将由
ToggelGameObject
方法单独处理

函数调用:

[序列化字段]
私人游戏对象切换;
公共无效OnToggleClick(){
ToggleGameObject(toggleGO);
}