Inspector 左上角的复选框在 Unity 中有啥作用?
Posted
技术标签:
【中文标题】Inspector 左上角的复选框在 Unity 中有啥作用?【英文标题】:What does the checkbox top left in Inspector do in Unity?Inspector 左上角的复选框在 Unity 中有什么作用? 【发布时间】:2014-12-01 10:31:47 【问题描述】:检查器左上角的 Unity (4.6) 中有一个复选框。我可以取消选中它以“隐藏”Image:s、Button:s 等等。它的真正作用是什么?我可以从脚本中取消隐藏所述对象吗?我确实尝试打开和关闭 .enabled 但没有任何反应;如果未选中该复选框,我将无法从脚本中再次显示该元素。不幸的是,在设计2D游戏领域时,您通常希望先将所有图形放在画布上以使其合适,然后将其隐藏,以便有一种默认的、空白的画布设计状态。否则,所有可能的标签和仅偶尔显示的内容都会使 Unity 编辑器中的设计画布变得混乱。
我没有找到任何相关和/或最新的文档。【问题讨论】:
【参考方案1】:它允许您停用和激活游戏对象。非活动的游戏对象将不会被绘制,它们的Update()
将不会被调用,并且您将无法使用Find()
找到它们,因此,您必须保存对稍后要在脚本中打开的任何对象的引用.
开启/关闭:http://docs.unity3d.com/ScriptReference/GameObject.SetActive.html
检查是否明确打开/关闭:http://docs.unity3d.com/ScriptReference/GameObject-activeSelf.html
检查是否打开/关闭,因为父级已打开/关闭:http://docs.unity3d.com/ScriptReference/GameObject-activeInHierarchy.html
【讨论】:
好吧,我错了。我不小心在保存的图像参考上尝试了 SetActive。当然它没有用......在游戏对象上做它。仍在努力将 GameObjects 从组件中分离出来。顺便说一句Image
有一个 IsActive() 如果相关的游戏对象和组件都为真,则根据文档为真。【参考方案2】:
该复选框与 <...thing...>.SetActive(false);
相同(其中 <...thing...> 是相关组件或游戏对象)。
http://docs.unity3d.com/ScriptReference/GameObject.SetActive.html
一旦组件设置为“非活动”(通过脚本或通过该复选框),您将无法访问它,除非您存储了对它的引用,即 GetComponent<T>()
、Find()
并且其他“搜索”功能不能看看吧。
如果您有一个带有 var 的“控制器”脚本,用于各种文本/图像/您想通过脚本激活的任何内容,并将对象拖放到检查器中,您将获得参考。或者,您可以使用脚本获取 start()
函数中的引用,然后将它们设置为 active=false。
这个统一的答案很好地涵盖了启用与活动:http://answers.unity3d.com/questions/25945/what-is-the-difference-between-these-three-ways-of.html
【讨论】:
以上是关于Inspector 左上角的复选框在 Unity 中有啥作用?的主要内容,如果未能解决你的问题,请参考以下文章