【问题标题】:Unity Instantiate an object with hise relative addListenerUnity 用他的相对 addListener 实例化一个对象
【发布时间】:2023-01-14 05:08:55
【问题描述】:

我试图用他的 AddListener 动态创建一个对象,但我找不到正确的语法

GameObject cube = (GameObject)Instantiate(prefab, new Vector3(0, x, y), Quaternion.identity, transform);
cube.transform.GetChild(0).gameObject.GetComponent<TextMeshPro>().text = "Text Mesh Pro"                    
cube.transform.GetChild(0).gameObject.onClick.AddListener(() => DoSomething("example"));

谢谢

【问题讨论】:

  • OnClick 属于 Buttons,因此您的实例化对象需要是一个 UI 元素并且上面有一个 Button 组件。如果您想检测 3d 对象上的点击,请查看Physics.Raycast

标签: c# unity3d


【解决方案1】:

@Çağatay 已经提到了什么。 OnClickUI.Unity.Button 的一部分,因此您需要为此获取组件(如果尚未完成,则将其添加到 GameObject 中)。

然后代码看起来像这样:

cube.transform.GetChild(0).gameObject.GetComponent<Button>().onClick.AddListener(() => DoSomething("example")));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-06
    • 2022-01-14
    相关资源
    最近更新 更多