Laya经验总结
简写prototype时与类的顺序很重要
错误
_p
= Player
.prototype
;
Laya
.class(Player
, "Player", _super
);
正确
Laya
.class(Player
, "Player", _super
);
_p
= Player
.prototype
;
也就是Laya.class紧跟着构造函数
设置了鼠标事件点击没有反应
非按钮类型可能未设置.size (也就是width和height)的值。填写鼠标事件类型时,如果是字符串,看是否书写正确。
Laya.Event.CLICK=“click” 试试冒泡方法,给子对象加事件,看是否有用,如果有用,那就是层级问题 有可能在你要点击的对象之上有更高一层可点击内容
可能alpha = 0 需要设置zOrder
在设置中如果出现cannot read / set undefine ;
声明了变量,没有赋值;
var obj
;
var name
= "cube";
obj
[name
] = 12;
好习惯:在声明了变量后直接 赋值 或 空值 或 null ;
var obj = {};
Sprite不显示
是否addChild是否设置pos,或与父级的相对位置最后是否在舞台内是否设置了zOder,在背景下边visible原因alpha原因
出现关于时间器的问题
Cannot read property '$_TID' of undefined
重复设置了同一个timer清除了没有的timertimer里的函数未定义
drawTexture和loadImage区别
drawTexture 的图片要预先加载
loadImage===graphics.loadImage
可以接受url、base64、svg的格式
重复设置了同一个timer清除了没有的timertimer里的函数未定义
Laya.Handler.create和function
主要看API里的看参数的类型
timer: 方法 loop(… , method:Function, …); event: 监听者 on(… , listener:Function, …); LoaderManager: 事件处理器 load(…, complete:Handler, …);
TimeLine问题
在第一次play后,会记住第一次播放时的前后属性,直接给TimeLine加.to()不会更改,只会在后面增加动画
如果要增加的话就要设置reset(); 只要播放不会叠加,清除之前状态播放本次状态;多个相同类的可以放进一个数组里控制;
如果出现undefine或can’t read属性或函数
可能在执行此函数之前未定义,早于定义
Animator事件:STOPPED / COMPLETE
Event.STOPPED是指一个动画片段播放完后回调Event.COMPLETE是指循环动画片段播放完后回调
使用遮罩时,出现黑边
如果遮罩与遮罩内的图形总长大于2048时会有问题,而且特别消耗性能,请慎用
console会报大于2048不会放于缓存中
关键词:Laya 经验总结