gpt4 book ai didi

touch - 移相器 : Attach Touch Event on Sprite

转载 作者:行者123 更新时间:2023-12-04 01:36:23 25 4
gpt4 key购买 nike

我是移相器的新手,现在我使用移相器 v.2.0.7。我想做的是让 Sprite 处理触摸事件。

如何附加 onTap到 Sprite 对象?

我知道 sprite_obj.events.onInputDown 可以实现触摸事件,但我还是用了 onInputUp要么是因为在 onInputDown 之后触发了弹出窗口/模式(警报) ,您需要在此之后单击两次才能使事件监听器再次工作。 (My personal workaround for this issue is using inInputUp.)

我尝试过的另一件事是添加 onTap在我的 Canvas 对象上,canvas.input.onTap.add我认为这不适合实现我的目标。是的,它现在可以处理触摸事件,但问题是我想将触摸事件限制在 Canvas 上的 Sprite 图像而不是整个 Canvas 上。

有人能帮我吗。谢谢。

最佳答案

您首先需要为输入启用 Sprite:
sprite.inputEnabled = true;
然后,您可以收听 Sprite 在涉及输入时调度的任何事件,例如:

sprite.events.onInputDown.add(onDown, this);

...

function onDown(sprite, pointer) {
// do something wonderful here
}

回调发送 2 个参数:导致输入事件的 Sprite 和指针(如在多输入系统中,这可能经常变化)

指针有许多可以访问的属性,例如它被放置的时间、移动历史等。请参阅 Pointer docs详情。

Sprite 有很多事件,但这些是与 Input 相关的事件(直接从 Phaser 源代码中提取):
/**
* @property {Phaser.Signal} onInputOver - This signal is dispatched if the parent is inputEnabled and receives an over event from a Pointer.
* @default null
*/
this.onInputOver = null;

/**
* @property {Phaser.Signal} onInputOut - This signal is dispatched if the parent is inputEnabled and receives an out event from a Pointer.
* @default null
*/
this.onInputOut = null;

/**
* @property {Phaser.Signal} onInputDown - This signal is dispatched if the parent is inputEnabled and receives a down event from a Pointer.
* @default null
*/
this.onInputDown = null;

/**
* @property {Phaser.Signal} onInputUp - This signal is dispatched if the parent is inputEnabled and receives an up event from a Pointer.
* @default null
*/
this.onInputUp = null;

/**
* @property {Phaser.Signal} onDragStart - This signal is dispatched if the parent is inputEnabled and receives a drag start event from a Pointer.
* @default null
*/
this.onDragStart = null;

/**
* @property {Phaser.Signal} onDragStop - This signal is dispatched if the parent is inputEnabled and receives a drag stop event from a Pointer.
* @default null
*/
this.onDragStop = null;

关于touch - 移相器 : Attach Touch Event on Sprite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25606006/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com