Unity中GameObject的Active与InActive的注意点

 时间:2024-10-13 05:23:04

1、Script可以控制InActive的GameObject,但前提是Script所依附的GameObject不能是InActive,一旦为InActive,自身所有控件均失效。

2、SetActive(bool isActive)设置GameObject是否活动,设置后,其子类物体也会变成InActive,值得注意的是,4.0以后的版本Active分了两类,GameObject.activeSelf和GameObject.activeInHierarchy,当一个GameObject为InActive时,其子对象本地状态即GameObject.activeSelf其实为ture,但实际在屏幕上的状态GameObject.activeInHierarchy是false。

3、无论子对象GameObject.activeSelf和GameObject.activeInHierarchy是什么状态,一旦其父对象状态为InActive时,它们的便失效,无法用GetComponentsInChildren和Find的方法找到,但用可以用Transform.GetChild()的方法找到子物体。

4、记住SetActive改变的是自身的activeSelf和子物体的activeInHierarchy,如果你有一个子物体的activeSelf是false,就算父物体SetActive(true),该子物体的activeSelf是不变。

5、activeSelf=false的时候activeInHierarchy一定为false,true同理。

  • 更改“我的文档”默认位置至D盘
  • Word2013怎么修改office主题样式颜色?
  • 如何开启夜神模拟器的开发者选项菜单图解
  • 空回收站的桌面图标怎么更换?
  • 怎么启动任务管理器?
  • 热门搜索
    清明节祭奠英烈手抄报 童话手抄报图片大全 教师节手抄报花边 手抄报板块 有关诚信的手抄报 关于语言艺术的手抄报 我爱校园手抄报 经典伴我行手抄报 体育手抄报图片 五水共治手抄报图画