zoukankan      html  css  js  c++  java
  • Egret 自定义皮肤 ———— 引入类中以及createChildren()和 childrenCreated()的使用

    创建egret游戏项目需要创建大量的皮肤EXML文件,创建之后在嵌入EXML到代码: (类似于JSON)

    • 第一种直接在代码中嵌入EXML文本内容
    • 第二中直接把skinName设置为exml文件的路径。

    实例:

    class ExmlTestView extends eui.Component{
        public constructor() {
            super();
            this.addEventListener(eui.UIEvent.COMPLETE,this.onComplete,this);
            this.skinName = "xxxx(.exml)";
            this.touchChildren = true;
        }
    
        public label: eui.Label;
    
        private onComplete() {
            this.label.text = "hello world!";
            this.label.textColor = 0xff0000;
        }
        
        //createChildren():用来对未绑定皮肤的手动调用创建皮肤里的内容到界面
        //childrenCreated():创建完成后底层会调用这个函数,用来覆写作一些初始化处理的(是在组件初始化完成后回调)
        private createChildren() {
        
            super.createChildren();
        
        }
    }

    上面的例子就是eui皮肤对应的类,在类中如何引用以及这个类中的执行顺序。

    下面主要对

    createChildren()
    childrenCreated()

    分别做出解释:
    1.createChildren()方法是:
    用来对未绑定皮肤的手动调用创建皮肤里的内容到界面,需要加载 exml 文件,所以就要使用到这个方法,所以
    createChildren()是最先执行的方法,

    2.childrenCreated()方法是:

    当 exml 文件 加载完成的时候,会调用这个方法,在createChildren()方法调用之后,也就是组件初始化完成,相当于上面的实例的
    onComplete()方法。


    山重水复疑无路,柳暗花明又一村! 专注填坑,少走弯路!
  • 相关阅读:
    用自己的算法实现startsWith和endsWith功能
    随机生成4位验证码,由用户输入并验证是否输入正确,如果输入错误就生成新的验证码让用户重新输入,最多输入5次
    二分法(网上查找结果)
    模拟摇奖:从1-36中随机抽出8个不重复的数字
    冒泡排序
    输入年龄输出年龄段
    水仙花数
    百钱买百鸡
    百马百担的问题
    控制台输出九九乘法表
  • 原文地址:https://www.cnblogs.com/mqflive81/p/11233632.html
Copyright © 2011-2022 走看看