你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
输入关键字进行搜索
搜索:
没有找到相关结果
layabox
赞同来自:
适配文档:https://layaair.com/3.x/doc/ba ... .html
小孟
无名玩家X
该问题目前已经被锁定, 无法添加新回复
5 个回复
layabox
赞同来自:
然后,我解释一下。
第一,勾选项目设置的 视网膜画布模式后,画布永远是等同于物理屏幕的大小,也就是说手机里是全屏的,电脑上就是浏览器的大小。浏览器多大画布就多大,所以。画布的对齐就无效,都等于物理大小了,还怎么对齐?只有画布小于物理屏幕大小的时候,对齐才有意义。文档中说的很清楚,这里的垂直对齐与水平对齐,是指画布基于整个物理屏幕的对齐。文档中,也说了,开启后无论任何适配模式,画布均采用物理分辨率大小。
参照文档:https://layaair.com/3.x/doc/basics/IDE/projectSettings/readme.html
第二,上一点也说了,当画布与物理屏幕大小一致的时候,画布对齐就没有作用。
LayaAir的适配,与画布相关的其实分成四种角度来理解,
第一种是画布等于物理分辨率大小,如果不勾选视网膜画布模式,永远与物理分辨率大小一样的,只有full模式。如果勾选了视网膜画布模式,那所有的模式,画布都是物理分辨率模式。
第二种是,不作适配的模式,不缩放模式noscale,这种模式,就是你设置多大就是多大。引擎不处理,一般人不会用。因为自己不做适配,在多种屏幕下,处处都是问题。这种模式是给那种理解屏幕适配,想自己做适配的开发者用的。极少数人使用。
第三种是全屏适配模式,大多数模式都是这种,例如保宽适配模式fixedwidth、保高适配模式fixedheight、自动保宽高模式fixedauto、不留底边的模式noboder、强行拉伸全屏模式exactfit,这些模式都是会让画布与物理屏幕达到全屏的大小。只是不同的模式各有优缺点,总之,在不勾选视网膜画布模式的情况下,为了达到全屏,画布是通过缩放进行了拉伸,同样是与物理屏幕全屏,拉伸画布的方式在损失精度的情况下,有利于性能的表现,所以这个取舍就看开发者对项目的要求了。具体的大家去看文档理解,这里就不再展开了。主要是想说的是,这些模式也是全屏的,所以画布对齐在这些模式下也无效。还是那句话,都全屏了,对齐的意义在哪。
最后一种,就是保障内容不丢失的最大比例拉伸的适配模式,showall,这种模式,永远会保障内容不会被裁切掉,但也会导致在某些机型里,没办法做到全屏适配,除非主动勾选视网膜画布模式。否则在这个模式的画布在某些屏幕下,是不会全屏的。
因此,总结两点,
一、勾选了视网膜画布模式,画布对齐不用设置了,设置也没用,只需要设置自己在场景中的对齐就好了。
二、只有showall和noscale这两种模式,才有设置对齐模式的必要。
最后,建议您仔细和反复的阅读文档,而不是仅仅在自己的尝试后对引擎产生误解,以上所说,全都在文档中有详细的介绍。
小孟
赞同来自:
小孟
赞同来自:
基础概念文档:https://layaair.com/3.x/doc/basics/common/terms/readme.html
屏幕适配文档:https://layaair.com/3.x/doc/basics/common/adaptScreen/readme.html
无名玩家X
赞同来自:
或者"舞台"和"画布"其实是一回事?(我一直以为舞台的级别比画布低,相当于画布的子物体来着...)
经过对比你给的demo和我的demo,发现当缩放设置为那三个适配宽高的设置时,对齐设置就会失效,变为top,left
您可以再试一下(我这边是使用编辑器小地球按钮在浏览器中运行的)
题外话:顺便请求一下啊,能不能在评论里添加图片啊,现在只能在回复里添加...可能对话会有点混乱.(比如本条回复,原本是想放在上面的"评论"里的,但是因为插不了图片,所以只能新开一楼)
而且还得上传再插入,着实有点不好用
无名玩家X
赞同来自:
您的例子开启视网膜后,对齐也会有问题.
不开视网膜,有个别的拉伸和对齐选项有问题.开启视网膜后,很多拉伸和对齐方向都有问题.
目前能达到我的需求且保证没问题的,只有不开启视网膜画布模式,然后设置showall+居中对齐.但不开启视网膜会模糊.然后fixedauto好像也有对齐问题.
试了一波下来,感觉能正确生效的设置组合很少,尤其是在开了视网膜画布模式之后,好像是在一堆漏洞中钻空子.