微信小游戏怎么做两个开放域

主项目设置2个WXSubContextView组件,如何分别实现开放域两个场景
creator版本是2.0.1。不行该怎么做呢?我开放域要2个界面,一个全屏一个比较小。

顶,有大神知道怎么做吗?

设置两个WXSubContextView组件应该是行不通,可开放域又要一大一小界面该咋搞

还有这种需求?

一个开放域里面放两个节点不行吗

两个一样大的可以。这一个要全屏(7501334),一个不要全屏(400320),我是卡在这边了

同时显示?

你好,通过使用两个带有WXSubContextView的控件,其中一个的size适配到全屏(子域窗体A),另外一个适配到窗体(子域可视窗体B),当你想展示任一子域窗体之前,调用Canvas设计分辨率相关API,
http://docs.cocos.com/creator/api/zh/classes/Canvas.html#designresolution,
这里值得注意的是,切换分辨率时子域会重新渲染,所以如果你想在切换分辨率之后就对截取子域画布,就只能截取到空白画布。

开放域全屏就好了啊。内容全不全屏无所谓啊,子节点切换隐藏显示就能做两个开放域了啊

对头,我就是想两个不同分辨率的好友排行榜,分别在主域不同的场景中使用。可以用多个WXSubContextView组件是吧?我试试

怎么我实验了不行呢,我是不是搞错了什么?可以加QQ问下你么。 875859873

大神咨询一下. WXSubContextView这个组件怎么才能get到?

用getComponent不行么?

设置下sharedCanvas的大小也可以做到的。参考下范例的代码
显示初始化的时候调用
this.tex = new cc.Texture2D();
sharedCanvas.width = 588;
sharedCanvas.height = 322;
主域显示排行的时候调用:
_updateWXSubDomainCanvas(){
if(!this.tex){
return ;
}

    this.tex.initWithElement(sharedCanvas);
    this.tex.handleLoadedTexture();
    this.display.spriteFrame = new cc.SpriteFrame(this.tex);

   // console.log('复活 _updateWXSubDomainCanvas');
},  

虽然不是最好的办法,但应该能够实现不同大小的子域榜单。

试过这个,好像不管用了,这个用法在1.9.1 - 2.0.0可以用,我用2.0.2时候给报错了,关键是还不会调

花了点时间 你看下我做的demo吧 Subdomain display with different resolutions.rar (2.1 MB)

https://github.com/Jno1995/Subdomain-display-with-different-resolutions

2赞

十分感谢,就是这种效果。

十分感谢,就是这种效果。