Laya经验总结

it2025-12-28  9

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设置s属性 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 经验总结

最新回复(0)