@441414288 请问怎么在主域设置Sharedcanvas 的hight呢?
只能在主域里面设置sharedcanvas的大小
var openDataContext = wx.getOpenDataContext()
var sharedCanvas = openDataContext.canvas
sharedCanvas.width = 586
sharedCanvas.height = 720
//发送消息通知开放数据域,生成sharedCanvas
openDataContext.postMessage({
method:'showFriendRank',
ticket:this.global.shareTicket,
pageIndex: 1,
mode: this.global.mode,
});
var self = this
var main = function() {
var texture = new cc.Texture2D()
if (texture) {
texture.initWithElement(sharedCanvas)
texture.handleLoadedTexture()
self.rankSprite.spriteFrame = new cc.SpriteFrame(texture)
}
}
setTimeout(main, 1000);
谢谢 很及时
为什么我的这样操作,显示不了
请问解决了没有。。同求这个问题
哪位大大能给一个最简单的demo啊?我这里怎么放index.js都报module “src/index.js” is not defined?
微信开发者工具里把工程删除,重新建一个工程就好
很蛋疼的是,子域取数据是异步的。而主域并不知道什么拿到好友游戏数据。所以当数据还没到时就把sharedCanvas画到主域上,可能是空的
循环绘制啊
你是说放在定时器里一直绘制吗。好傻的方法~
我发现只要游戏进入了,子域就开始运行了。
请问这个问题解决了么
解决了,主域里设置宽高固定,滑动时传入移动的距离重绘,达到类似scrollView的视觉效果
发布成 canvas 渲染模式,就可以用canvas.getContext(‘2d’)。但是也没办法通过这个上屏画布的context 来绘制自己的内容,比如 排行榜用到的sharedCanvas 。。。这个是 cocos 在微信小游戏的大坑!。。。官方还没解决
刚又翻了一下文档,好像已经有解决方法了 http://docs.cocos.com/creator/manual/zh/publish/publish-wechatgame-sub-domain.html?h=texture2d
我这边调用self.rankSprite.spriteFrame = new cc.SpriteFrame(texture)的时候,会报错:Cannot set property ‘spriteFrame’ of undefined。在文档里也没有找到有关 rankSprite 的说明,有这个属性的吗?
但是用起来不太好用啊
而且会有个问题,就是子包代码包过大
请问楼主 这个怎么解决 有没有遇到过呢
头大啊,还是不会