CONTENT

1.问题发生情景:在LayaAir IDE UI编辑器中,给UI上创建按钮发布之后,程序运行stage上没有出现按钮,调试控制台输出: lose skin Texture/btn_test.png
问题导致原因:在工具菜单下进行了图集打包,按钮资源被打包进图集,在使用过程中,需要先加载图集,否则会出现找不到资源的错误。
解决方案:

//atlas方式图集使用示例
Laya.loader.load("./res/atlas/ui.atlas", Handler.create(this, this.onLoaded));

注意:必须在资源加载完毕之后进行场景初始化

2.问题发生情景:在使用LayaAir自带工具打包app(测试)安卓apk的时候,能打包出apk,但是运行时报错:ui is not defined
问题导致可能原因:TypeScript 项目运行时会生成相应的文件,多次进行调试,有可能导致资源文件未更新,打包app时会导致错误。
解决方案:删除bin目录下js目录,再进行调试发布,会重新生成相应的js文件,再次打包app(测试),成功运行项目。

3. “mouseThrough : Boolean = false,指定当mouseEnabled=true时,是否可穿透。默认值为false,如果设置为true,则点击空白区域可以穿透过去。”

4.Stage提供几种适配模式,不同的适配模式会产生不同的画布大小,画布越大,渲染压力越大,所以要选择合适的适配方案。
Stage提供不同的帧率模式,帧率越高,渲染压力越大,越费电,合理使用帧率甚至动态更改帧率有利于改进手机耗电。

 

5.View中嵌套Dialog组件提示创建dialog失败。
LayaAir IDE支持View界面嵌套Dialog组件
操作如下:在项目面板创建一个View界面,然后从组件面板拖拽一个Dialog到舞台,F12发布。

 

 在项目中对该界面进行加载显示,编译成H5后,在浏览器的调试界面会发现有这样的提示
这个是由于我们没有对dialog组件进行注册,在该view界面加载显示前对dialog进行一下注册即可【View.regComponent(“Dialog”,Dialog)】
//View中嵌套Dialog需要在view添加到舞台之前对Dialog组件进行注册。
View.regComponent("Dialog",Dialog);
Laya.stage.addChild(new WheelSurfLayer());

 6.高版本layaaircanvas模式下九宫格会出现白线,需要使用webGl渲染

7.进度条随着进度改变会移动位置,需要使用九宫格对进度条资源处理。

8.问题发生情景:在LayaAir IDE UI编辑器中,给image添加一个image之后,如果不给父级image设置宽高属性,在给子级image添加centerX、centerY的时候不会起作用
解决方案: 设置父级image的width和height属性为所使用图片的默认宽高。

9.List列表添加selectHandler之后,多次选择同一个item的时候,只会响应第一次,想要能够多次响应,解决方案就是 当onSelect方法处理完了之后,在最后将list的_selectedIndex设置成list没有的index即可。
注意,不能直接修改selectedIndex,因为这样会再次触发onSelect方法,此处使用TypeScript会编辑器报错,但是编译之后无问题,因为该属性_selectedIndex为protected,在ts中只有它本身及子类可以访问。

10.Laya.timer.once的延时处理如果调用同一个函数,后一个会覆盖前一次的调用,想要多次调用,此处需要设置最后一个参数为false。

11.在chrome浏览器版本高于70的浏览器中,http协议会被隐藏不显示,72的时候file等其他协议不会被显示,这会导致laya本地运行时,如果使用了get方式改变链接地址,会导致问号等符号被转义为URLcode。

0

Previous Post

Next Post

Comments | NOTHING

暂无评论...