使用fairygui,竖屏如何适配

在论坛上看到fairygui,想尝试下,看看是否比在ccc原生上舒服点。
 
1.CCC中适配:背景为750*1624,fit width,相应的部件会通过CCC自带的widget做不同屏幕的适配。
使用fairygui,将组件设置成750 1334还是750 1624
fit width有没有?
相应的部件有没有CCC中的widget的功能呢?
已邀请:

谷主

赞同来自:

如果用fgui,CCC里设置成fitwidth fit height都勾上。然后fgui里自己用关联就能做好适配了。

codercmd

赞同来自:

我没有 fit width fit height,只设置 fit width关联好也没问题。

22.png

 
但是背景会出问题。我的背景是750*1624的。而组件设置的是750*1334。背景会出现黑边。
 
如果我设置组件为750*1624,当切换到750*1334手机的时候,那么背景会被拉伸,也就是压扁。

11.png


33.png

 

谷主

赞同来自:

背景用loader装,loader有填充处理,可以等比

codercmd

赞同来自:

谢谢,谷主。

view.getChild('n34').asLoader.url = 'http://cdn.img.iheyman.com/webroot/cartoon/upload/ads/local/20201110/7c7fb276ce148f5f3275b57e53e853a2.jpg';
通过装载器实现了。
 
新问题来了,因为长屏、刘海屏手机最上面多多少少是功能区域。
如何判断当高度大于1334的时候,top_node距离顶部一段距离。
cocos creator中,我是这样判断的:
if(cc.winSize.height> 1334)
{
   this.$top_node.getComponent(cc.Widget).top = (cc.winSize.height - 1334)/3 + 10;
 }

14.png

 
 
 
 
 

codercmd

赞同来自:

我看教程,找到解决办法了,但是觉得很别扭。
 let aGroup = view.getChild("top_node").asGroup;
        let cnt = view.numChildren;
        for(let i=0;i<cnt;i++)
        {
            if(view.getChildAt(i).group==aGroup)
            {
                view.getChildAt(i).node.y -=150;
            }
        }
 

要回复问题请先登录注册