如何使用Phaser库创建完全响应的html5游戏?

如何使用Phaser库创建完全响应的html5游戏?,html,phaser-framework,Html,Phaser Framework,我正在使用Phaser2.5.0(也尝试了2.4.8),我正在尝试使用PhaserLibrary创建完全响应的游戏 当我刷新页面时一切正常,下面是图像: 但当我将旋转更改为纵向时,对话框消息不正常,图像: 当我使用纵向模式刷新页面时,我获得“确定”对话框: 所以问题是当我调整浏览器窗口的大小时 以下是init phaser游戏的代码: var game = new Phaser.Game(window.innerWidth, window.innerHeight, Phaser.AUTO)

我正在使用Phaser2.5.0(也尝试了2.4.8),我正在尝试使用PhaserLibrary创建完全响应的游戏

当我刷新页面时一切正常,下面是图像:

但当我将旋转更改为纵向时,对话框消息不正常,图像:

当我使用纵向模式刷新页面时,我获得“确定”对话框:

所以问题是当我调整浏览器窗口的大小时

以下是init phaser游戏的代码:

var game = new Phaser.Game(window.innerWidth, window.innerHeight, Phaser.AUTO);
还审判了:

var game = new Phaser.Game("100%", "100%", Phaser.AUTO);
下面是main.js中的创建函数:

    create: function(){
        console.log('create');

        this.game.antialias = true;
        this.game.stage.smoothed = true;
        this.input.maxPointers = 1;
        this.scale.scaleMode = Phaser.ScaleManager.SHOW_ALL;
        this.scale.minHeight = 0;
        this.game.time.advancedTiming = true;
   },
所以要再次说明的问题是,当我调整浏览器窗口的大小时,但当我刷新时,它就不能正常工作了。游戏必须支持调整大小

下面是一个简单的示例,给出了几乎相同的结果,刷新时可以,但执行调整大小时不可以:


谢谢

在iOS中有一个旧的但显然没有修复的bug导致了(导致?)这一点。网络上有几种变通方法,其中之一是:

根据描述:

这个修正通过监听设备的加速计来预测 当方向即将发生变化时。当它认为 方向更改即将发生,脚本将禁用用户缩放, 允许通过缩放正确进行方向更改 残废一旦设备处于以下状态,脚本将再次恢复缩放: 朝向接近直立,或在其方向改变后。这 这样,在使用页面时,用户缩放永远不会被禁用


也许这可以帮助您……

问题不仅在于我更改方向时,问题还在于我调整浏览器窗口的大小和/或更改桌面浏览器和移动浏览器的方向时使用Interface Builder。如果需要,请确保约束是正确的。有时它们不是,你会变形。@MNM-不,我是在editorI上手动创建游戏,或者你硬编码了内窗口的大小,当你旋转它时,窗口会被弄乱,maybe@MNM-宽度和高度在cssI中为100%,当您打开手机时,会出现更新和重画问题。我打赌你必须手动调用重画方法,使其在每次打开手机时都能正确显示