你需要用代碼來布局游戲ui嗎?
不,你不需要。只要通過exml就可以把ui組件很簡單的搭建起來
紋理圖,首先要做的事
ps: 紋理集可以用智圖之類軟件進行進一步壓縮節(jié)省空間
把資源放到項目中
在src下的創(chuàng)建eui自定義組件
會同時創(chuàng)建exml配置文件
從資源列表中拖拽到exml中即可自動識別為eui.Image組件(ps:不是從resource目錄拖拽過來昂灵,而是從default.res.json中解析出來的資源,兩者不相等但是有關聯(lián))
如果需要控制對象舞萄,設置ID為變量名眨补,在對應的eui里面進行設置
eui類如何加載exml配置皮膚
如果通過eui自動創(chuàng)建的exml,不需要進行設置倒脓,這兩個文件是綁定在一起的撑螺。
變量在eui中直接定義exml中同名id,并且設置對應類型把还。
調用變量周期实蓬,必須在childrenCreated之后進行,不可在構造時就直接調用吊履。
高級擴展
在eui中定義一個變量值安皱,字符串,可以從標簽中直接填充到動態(tài)文本中
高級擴展2
eui.Scroller為滾動容器艇炎,eui.List為數(shù)據(jù)列表酌伊,列表子項可以這樣寫
- 接口不擴展類,直接填充數(shù)據(jù)
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中的組件唇敞,是這樣一個順序