egret.eui皮肤与组件(1)

本文介绍了EUI组件的皮肤分离机制,强调皮肤是数据对象,用于位置布局和样式外观。逻辑部分负责数据刷新和事件监听。皮肤通过skinName属性与逻辑组件关联。此外,还讲解了主题机制,允许全局配置默认皮肤,简化组件实例化过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

EUI组件使用了皮肤分离机制: 一般可以分为逻辑和皮肤两个部分

===================================================

1. 皮肤

逻辑(js) ------> 数据刷新

       ------> 事件监听

皮肤(exml) ------> 位置布局

       ------> 样式外观


* 这里的皮肤不是显示对象, 只是一个数据对象(EXML格式), 存储了初始化显示列表和外观需要的特定数据

* 将皮肤附到逻辑组件上的过程就是对逻辑组件应用外观创建的初始化操作, 如 this.skinName = 'xxxxxxxxx'

* 每个eui组件都有一个childrenCreate()方法, 它会在组件初始化完成后完成回调, 子类通常覆盖这个方法来访问一些延时实例化的子项

* 在皮肤附到逻辑组件上时, 会自动匹配双方同id的变量(即皮肤组件skinPart)

====================================================

2.主题

主题机制可以为指定组件配置默认皮肤, 全局指定一次即可, 之后直接实例化组件, 不再需要显示设置组件的skinName

====================================================

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值