老师,关于GameObject.Instantiate()方法,什么时候需要setActive呢

来源:8-4 UIHall的制作

闪光棒

2023-06-03

老师,关于GameObject.Instantiate()方法
在UISystem中,执行完GameObject.Instantiate() 不用执行 setActive,画面就能展示
图片描述

在UIHall中,初始化每个Item时,执行完GameObject.Instantiate() 后,要执行 setActive,画面才能展示
图片描述

老师,请问上述两种有什么区别吗

写回答

1回答

王海波

2023-06-09

这个取决于在制作预制体的时候,预制体是启动还是禁用的

https://img.mukewang.com/szimg/6482f5f809710da402590105.jpg

你可以在 属性检查器(Inspector) 上看到这个勾 。

勾选后的GameObject/Prefab 即使他在场景内,也会被隐藏。

因此在克隆出这个预制体后,如果他处于

- 禁用状态,如果需要他被显示在场景中,那么调用 SetActive 来启动

- 禁用状态,但是不需要显示在场景里面,也可以不调用 SetActive

- 启动状态,那么不用调用 SetActive 他也会显示在场景中

0
0

Unity 全流程开发游戏BallSort,助力迈入游戏高薪领域

掌握 Unity 核心技术,助力迈入游戏高薪领域

267 学习 · 39 问题

查看课程