GameObject.Find()与transform.Find()查找游戏对象的区别


问题描述:在项目中需要在一开始将一个UGUI隐藏,之后在特定的时候再显示。本来想的办法是在需要显示的时候调用GameObject.Find()找到这个UI并设置active,但发现找出来的为null,经查阅资料发现GameObject.Find()只能find没有被隐藏的游戏对象,而我们的UI对象一开始就隐藏了,所以使用GameObject.Find()找到的为null。

解决办法:使用GameObject.Find()找这个UI的父亲或随便祖先(只要他的上级是非隐藏的就可以了);然后再对祖先使用transform.Find()方法即可找到这个隐藏的UI。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM