你需要用代码来布局游戏ui吗?
不,你不需要。只要通过exml就可以把ui组件很简单的搭建起来
纹理图,首先要做的事
ps: 纹理集可以用智图之类软件进行进一步压缩节省空间
把资源放到项目中
在src下的创建eui自定义组件
会同时创建exml配置文件
从资源列表中拖拽到exml中即可自动识别为eui.Image组件(ps:不是从resource目录拖拽过来,而是从default.res.json中解析出来的资源,两者不相等但是有关联)
如果需要控制对象,设置ID为变量名,在对应的eui里面进行设置
eui类如何加载exml配置皮肤
如果通过eui自动创建的exml,不需要进行设置,这两个文件是绑定在一起的。
变量在eui中直接定义exml中同名id,并且设置对应类型。
调用变量周期,必须在childrenCreated之后进行,不可在构造时就直接调用。
高级扩展
在eui中定义一个变量值,字符串,可以从标签中直接填充到动态文本中
高级扩展2
eui.Scroller为滚动容器,eui.List为数据列表,列表子项可以这样写
- 接口不扩展类,直接填充数据
var list = new eui.List();
list.itemRendererSkinName = 'resource/eui_skins/RankList.exml';
list.dataProvider = this.data;
- 扩展列表子项类型
this.list.itemRenderer = BoardTaskUnit;
this.list.dataProvider = this.data;
class XXX extends eui.ItemRenderer
资源加载不到只显示边框
- 试试exml右上角的刷新按钮
- 如果有部分资源未加载出来,试试查询资源的名字在default.res.json中是否有匹配,如果纹理集贴图有更新,有时default.res.json并不会及时更新,会导致新增图片不展示出来的问题
- 当更新资源时,首先更新default.res.json配置,然后更新exml中的组件,是这样一个顺序
网友评论