目前有一个h5项目,用cocos creator 1.5.2 写的。在大多数安卓和ios设备上显示是正常的。在某些ios设备(8.x/9.x)上,页面显示为pc版的web页面。找不到啥原因。有没有办法强制让它显示为web mobile模式?
你是预览时出现的这个问题?
在ios设备上看,出问题的。。。而且奇怪的是cocos logo页和我自制的loading页没问题。。。就是login页有问题。
在ios 10.x设备和安卓设备上都是正常的
你是预览时出现的这个问题?
不是预览啊。。。直接build完后,提交到http服务器。。。然后在ios设备上的微信浏览器访问
刚测试了一下,这个ios设备上的Safari浏览器,访问我的login页面也有问题。。。
你看看发布后的文件夹,里面有没有 pc 版的 web 页面?如果没有,就是你自身环境问题了,估计是浏览器有缓存。
我找到原因了,是onload函数里cvs.fitWidth = true;导致的。。。。。
onLoad: function () {
if(!cc.sys.isNative && cc.sys.isMobile){
var cvs = this.node.getComponent(cc.Canvas);
cvs.fitHeight = true;
cvs.fitWidth = true;
}
把cvs.fitWidth = true;去掉,就ok。。。。这是为什么??????而且只在Ios 8.x/9.x有问题
我不懂你所谓的问题是什么……
问题:在ios 8/9设备上,微信h5游戏页面显示成PC版面(超大)。安卓和ios 10设备没问题。
重现环境:ios 8/9 + 微信
发现:是因为cc.Canvas.fitHeight 和 cc.Canvas.fitWidth 都设置成了true,从而导致 ios 8/9设备显示适配失败。如果我只设置cc.Canvas.fitHeight=true,而fitWidth = false,此时ios8/9设备适配正常了(宽和高都是手机的屏幕大小了)
我的疑问是:
由于项目需要,我们必须同时设置fitHeight、fitWidth为true。
如何在Ios 8/9环境下,能够让我的h5页面在微信上显示正常?
又要fixWidth 又要fixHeight 不会拉伸或压缩么? 这样会不会很奇怪
当然不奇怪。你试一下效果就知道了