默认计划
2341人加入学习
(4人评价)
【唐老狮】Unity中的UI系统之GUI
价格 ¥ 109.00
承诺服务
该课程属于 Unity3d实战就业路线课程套餐
请加入后再学习

可以用一个脚本专门做这两个方法,省的每个页面都做一份:

 

public class PanelSelect : MonoBehaviour
{

    //方便在其他脚本里 . 出来
    public static PanelSelect instance;

    private void Awake()
    {
        instance = this;
    }

//传入的参数是MonoBehaviour,因为需要失活的脚本都继承了这个类

    public void ShowPanel(MonoBehaviour instance)
    {
        instance.gameObject.SetActive(true);
    }

    public void HidePanel(MonoBehaviour instance)
    {
        instance.gameObject.SetActive(false);
    }

}

 

 

另外注意因为Awake阶段可能先后顺序不一致,如果其他脚本要在这个阶段调用这个PanelSelect.instace的话可能失败,所以可以放在Start阶段,以下是示例:

 

private void Awake()
{
    instance=this;
}

private void Start()
{
    PanelSelect.instance.HidePanel(this);
}

[展开全文]

//总结
//1.要完成面板之间相互控制显示有3中方法
//第一种:都写在一个onGuI中通过bool标识去控制显影
//第二种:挂载在同一个对象上通过控制脚本的失活激活enable去控制代码是否执行达到显影//第三种:挂载在不同对象上通过控制对象的失活激活来达到面板的显影
//2.关键的如何在多个面板之间相互调用显影我们是通过静态变量和静态方法的形式
 

[展开全文]

授课教师

游戏开发前端主程

课程特色

视频(31)
下载资料(30)

学员动态

morgana 完成了 Lesson4.cs
morgana 开始学习 Lesson4.cs
muqianke 加入学习
逐梦鸢行 加入学习