c# – 面板在NGUI中隐藏和显示

前端之家收集整理的这篇文章主要介绍了c# – 面板在NGUI中隐藏和显示前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我是NGUI和团结3d的新手.
我在ui root中有两个面板.它被命名为firstPanel和secondPanel. secondPanel在场景中停用.在firstPanel中,我有很多按钮,一个是播放按钮,即图像按钮.在点击播放按钮时,firstPanel应该隐藏,secondPanel应该显示.我添加了一个新脚本来播放按钮并在其中编写代码
  1. void OnClick(){
  2. GameObject panel2 = GameObject.Find("secondPanel");
  3. NGUITools.SetActive(panel2,true);
  4. GameObject panel1 = GameObject.Find("firstPanel");
  5. NGUITools.SetActive(panel1,false);
  6.  
  7. }

但我得到这个错误:“NullReferenceException”
在哪个ngui脚本我必须编辑,我该怎么做?请帮我解决这个问题
提前致谢.

解决方法

如果您的面板命名为Panel1和Panel2,则使用GameObject.Find(“secondPanel”)和GameObject.Find(“firstPanel”)找不到它们.如果“Panel1”和“Panel2”是游戏场景中唯一的名称(没有其他Panel1或Panel2),那么您可以尝试使用
  1. void OnClick(){
  2. GameObject panel2 = GameObject.Find("Panel2");
  3. NGUITools.SetActive(panel2,true);
  4. GameObject panel1 = GameObject.Find("Panel1");
  5. NGUITools.SetActive(panel1,false);
  6.  
  7. }

猜你在找的C#相关文章