进入新公司写的第一篇文章。
发现我要从新学习一个引擎laya.关于游戏已经从当初的Unity,到转向cocos,到转向egret,到转向laya.我决定记录一下自己的学习日常。根据目前我觉得最重要的东西:图片,Button组件,还有scrollview组件,缓动系统。(都大同小异)
首先 : button。第一种正常的button按钮,但是点击事件也需要通过代码添加。
this.bg.on(Laya.Event.CLICK,this,this.bgClick);
on(绑定的类型,绑定的对象,绑定的点击事件)
this.bg就是UI上面的图片显示,可以是图片类型,也可以是其他类型。总之就是添加click事件。代码添加,UI层无绑定事件。这点跟egret的皮肤类型很相似。不像cocos跟unity可以在页面上对图片进行事件的绑定。
第二 scrollview 这个组件只要带排行榜功能都少不了他。
在laya中的实现,主要是list控件加Box控件。都需要把节点的renderType设置为render类型的,box不设置会出现不会赋值的现象。所以非常的重要。
list在代码中, Handler这个函数非常的常用在laya中,(绑定对象,绑定函数)。可以参考这个https://blog.csdn.net/honey199396/article/details/79716444
private InitList(): void {
var arr: Array<any> = []
for (var i: number = 0; i < 10; i++) {
arr.push({ label: "item +++" });
}
this.list.array = arr; //给列表中的数字赋值
this.list.vScrollBarSkin='' //滚动条的设置这样子不显示
// this.list.renderHandler = new Handler(this, this.onListRender); //给列表当中的item设置不同的渲染样式
}
//举个例子
private onListRender(item: Laya.Box, index: number): void { //渲染特殊样式
var label: Label = item.getChildByName("label") as Label;
if (index % 2) {
label.color = "#ff0000"; //字体设置为不同的颜色
} else {
label.color = "#000000";
}
}
超级棒!明天在搞sprite.