新建UI

作者: 沉麟 | 来源:发表于2019-11-11 16:52 被阅读0次

    1.设置laya模式为分离模式F9---场景设置---发布模式---分离模式


    laya分离模式.PNG

    2.新建View页面/场景Game,相当于一个UI视窗


    View.PNG

    3.点击F12发布UI,laya会在ui/layaMaxUI脚本中生成发布的场景并生成对应UI名称

    export module ui.Views {
        export class GameUI extends View {
            public startBtn:Laya.Button;
            constructor(){ super()}
            createChildren():void {
                super.createChildren();
                this.loadScene("Views/Game");
            }
        }
        REG("ui.Views.GameUI",GameUI);
        
    }
    

    4.根据名称GameUI,建立对应脚本,一般脚本名为对应UI名称
    5.脚本继承如下,IBaseUI接口是自己写的UI接口,方便UIMgr管理UI,注意:Laya.ClassUtils.regClass("GameUI", GameUI);每个UI脚本都要注册,方便laya识别,将脚本GameUI拖拽至对应View窗口的runtime一栏即可

    import { ui } from "../../../ui/layaMaxUI";
    import IBaseUI from "../IBaseUI";
    
    export default class GameUI extends ui.Views.GameUI implements IBaseUI {
        isLoaded: boolean;//判断UI资源是否加载完成
        onShow(aprams: any) {//资源加载完成显示UI时自动调用方法
            // throw new Error("Method not implemented.");
        }
        onHide(callback?: Function) {
            // throw new Error("Method not implemented.");
        }
    }
    Laya.ClassUtils.regClass("GameUI", GameUI);
    
    runtime.PNG

    在Game视窗里面的节点,如果其属性窗口var一栏命名后F12发布,可以直接在脚本里面拿到节点this.(var的命名)
    在GameUI里面需要判断资源是否加载完成:

    onEnable() {
            this.isLoaded = true;//确定资源加载完成
        }
    

    相关文章

      网友评论

          本文标题:新建UI

          本文链接:https://www.haomeiwen.com/subject/fritictx.html