2

我使用 cocos2d-js 制作游戏,在浏览器上试了一下,运行良好,所有的触控功能都在工作,但是当我将它编译到 android 设备时,触控功能根本不工作。

我通过以下方式注册触摸:

        cc.eventManager.addListener({
        event: cc.EventListener.TOUCH_ONE_BY_ONE,
        setTouchEnabled: true,
        setSwallowTouches: true,
        onTouchBegan: this.onTouchBegan,
    }, this)

并通过以下方式实现:

onTouchBegan:function(touch, event){
    var pos = touch.getLocation();
    var touch_x = pos.x;
    var touch_y = pos.y;
...
}
4

1 回答 1

3

我是这样实现的,它在 WEB、Android 和 iOS 中运行良好:

if( 'touches' in cc.sys.capabilities ) { 
    this._touchListener = cc.EventListener.create({
        event: cc.EventListener.TOUCH_ALL_AT_ONCE,
        onTouchesBegan: function(touches, event) {

        },

        onTouchesMoved: function(touches, event) {

        },

        onTouchesEnded: function(touches, event) {

        }
    });

    cc.eventManager.addListener(this._touchListener, this);
}
于 2014-08-29T14:36:42.697 回答