2

我很难找出如何从 tapEvent 对象获取点击坐标,该对象被传递给我的自定义处理程序(无论如何我都没有找到它的规范)。还有一个singleTap事件,它将自定义变量“X”作为“Y”传递,我猜这是坐标,但我不能在模拟器中调用那个。

关键是我正在开发一个应用程序,其中我有很大的元素,我需要知道用户点击的确切位置(它可能是全局屏幕坐标或我的元素的相对坐标)。

这是示例代码:

//inside of assistant's setup method:
Mojo.Event.listen(this.controller.get('elem'), Mojo.Event.tap, this.listenSingleTap.bindAsEventListener(this));

//custom handler:
SomeAssistant.prototype.listenSingleTap = function(singleTapEvent){
    this.someOtherMethod(singleTapEvent.x, singleTapEvent.y); //This is wrong and doesn't work - how I suppose to get tap coordinates?
}

非常感谢您的任何建议。

4

1 回答 1

4

点击事件的 x 和 y 坐标位于事件的“向下”属性中。

前任。

MyAssistant.prototype.setup = function() {
    Mojo.Event.listen(this.controller.get('elem'), Mojo.Event.tap, this.handleTap.bind(this));
}

MyAssistant.prototype.handleTap = function(event) { 
    Mojo.Log.info("tap down at x: " + event.down.x + " y: " + event.down.y);
}
于 2009-09-18T02:22:43.240 回答