我是NGUI和团结3d的新手.
我在ui root中有两个面板.它被命名为firstPanel和secondPanel. secondPanel在场景中停用.在firstPanel中,我有很多按钮,一个是播放按钮,即图像按钮.在点击播放按钮时,firstPanel应该隐藏,secondPanel应该显示.我添加了一个新脚本来播放按钮并在其中编写代码
我在ui root中有两个面板.它被命名为firstPanel和secondPanel. secondPanel在场景中停用.在firstPanel中,我有很多按钮,一个是播放按钮,即图像按钮.在点击播放按钮时,firstPanel应该隐藏,secondPanel应该显示.我添加了一个新脚本来播放按钮并在其中编写代码
void OnClick(){ GameObject panel2 = GameObject.Find("secondPanel"); NGUITools.SetActive(panel2,true); GameObject panel1 = GameObject.Find("firstPanel"); NGUITools.SetActive(panel1,false); }
但我得到这个错误:“NullReferenceException”
在哪个ngui脚本我必须编辑,我该怎么做?请帮我解决这个问题
提前致谢.
解决方法
如果您的面板命名为Panel1和Panel2,则使用GameObject.Find(“secondPanel”)和GameObject.Find(“firstPanel”)找不到它们.如果“Panel1”和“Panel2”是游戏场景中唯一的名称(没有其他Panel1或Panel2),那么您可以尝试使用
void OnClick(){ GameObject panel2 = GameObject.Find("Panel2"); NGUITools.SetActive(panel2,true); GameObject panel1 = GameObject.Find("Panel1"); NGUITools.SetActive(panel1,false); }