问题描述
我使用移相器及其完美渲染和调用所有指针事件(例如按钮btn
上的指针悬停、指针输出、指针向上和指针向下)创建了一个简单的动画屏幕正如浏览器所预期的那样。但是,当我使用 WebView 的渲染屏幕渲染相同的游戏但它不调用任何指针事件。为了确认 JavaScript 正常工作,我通过在 eventlistner
上添加 window
进行了测试,并且它工作正常。
var config = {
type: Phaser.CANVAS,width: 650,height: 900,canvas: document.getElementById('myCustomCanvas'),scale: {
mode: Phaser.Scale.FIT,width: 750,height: 1334,parent: 'game'
},physics: {
default: 'arcade',arcade: {
gravity: { y: 0 }
}
},scene : {
preload: function(){game.preload(this,'asset_url');},create: function(){game.create(this);},update: function(){game.update(this);},}
};
function game(config) {
this.start = function(config)
{
this.phaserGame = new Phaser.Game(config);
};
this.create = function()
{
var btn = this.scene.add.sprite(375,665,'btn');
btn.setInteractive()
.on('pointerover',() => {
console.log('pointerover');
})
.on('pointerout',() => {
console.log('pointerout');
})
.on('pointerdown',() => {
console.log('pointerdown');
})
.on('pointerup',() => {
console.log('pointerup');
});
};
}
我正在使用 Xamarin Forms WebView 在移动设备中呈现游戏。我对 WebView 的设置如下。
var webView = CreateNativeControl();
webView.SetWebViewClient(new HTMLGameWebClient(this));
webView.Settings.LightTouchEnabled = true;
webView.Settings.JavaScriptEnabled = true;
webView.Settings.DomStorageEnabled = true;
webView.Settings.mediaplaybackRequiresUserGesture = false;
SetNativeControl(webView);
我也有条件 CSS,仅当画布在移动设备中呈现时使用。
canvas {
width: 100vw !important;
height: unset;
}
预先感谢您的任何帮助或建议。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)