【问题标题】:Finding dynamically generated components Unity查找动态生成的组件 Unity
【发布时间】:2021-12-18 12:08:18
【问题描述】:

我有一个游戏对象,我正在为该对象生成一个组件

var arcGISMapViewComponent = gameObject.AddComponent<ArcGISMapViewComponent>();

Void Start()下

但是,我还有另一门课是

public void ReadStringInput(string s)

我还需要在那里显示 arcGISMapViewComponent 的存在,但由于它一开始还没有生成,所以我遇到了一个错误

找不到'arcGISMapViewComponent'我该如何解决这个问题?

【问题讨论】:

  • 请使用正确的标签!请注意,unityscript 更好曾经是一种在早期 Unity 版本中使用的自定义 JavaScript 风格的语言,现在长期弃用
  • 作为我的一个经验法则:在不依赖Awake 中的其他组件的情况下,尽你所能。其余的在Start 中初始化。除此之外,您总是必须使用执行顺序或使用事件

标签: c# object dynamic find components


【解决方案1】:

您可以使用Awake() {} 确保在其他Start 代码之前调用某些代码(在您的情况下为组件创建)。如果您的其他类不是MonoBehaviour,那么您应该创建一个事件并Invoke 它通知该组件已创建并且您的其他类订阅该事件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-16
    • 1970-01-01
    • 2022-01-09
    • 2013-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多