【发布时间】:2019-05-07 16:06:39
【问题描述】:
希望获得此游戏对象的实例,以便成功使用 .enabled 将其隐藏在场景中。
PlayPortalLoginButton loginButton = gameObject.GetComponent<PlayPortalLoginButton>();
对 C# 相当陌生,我相信我已经接近实现上述目标的目标。什么需求变了?想了解如何正确执行此操作。
【问题讨论】:
-
上面那行表明你已经拥有了游戏对象。
-
@Eddge 我引用了游戏对象,但我需要引用上面游戏对象的实例。不是原来的游戏对象
-
我觉得这里有误会。所有 MonoBehavior 都使用 gameObject 变量引用其游戏对象。所以,在这种情况下,你说
GetComponent<T>()使用gameObject。组件 gameObject 将是相同的。现在,如果您的意思是要获取另一个 GameObject 上的 PlayPortalLoginButton 的 MonoBehavior,您可能需要使用 FindObjectOfType,或者甚至为该脚本提供对该对象的公共引用。 -
GetComponent仅获取此游戏对象上该类型的组件,而不获取场景中其他对象上该类型的组件。这就是您使用 FindObjectOfType 的原因。 -
或 GameObject.Find 或其中的各种组合。
标签: c# unity3d gameobject