3

Pointer イベントをキャッチするために、この Button クラスを作成しました。

public class Button implements Pointer.Listener {

  public void initLayer(Image defaultImage) {
    layer = parent.createImageLayer(this.defaultImage);
    layer.addListener(this);
  }

...

インスタンス化されたボタンの 1 つに触れると、onPointerStart および onPointerEnd イベントが発生します。しかし、ボタンの 1 つが既にタッチされていて、別のボタンにタッチし始めた場合、2 番目のボタンの onPointerStart イベントは取得されません。

これらのマルチタッチ イベントを playn で取得する方法はありますか?

4

1 に答える 1

6

このPointerサービスは、単純なタッチ操作またはマウス操作のいずれかを抽象化することを目的としています。したがって、いかなる種類のマルチタッチ操作もサポートしていません。Pointerサービスを介した最初のタッチ以外のタッチに関する通知は受け取りません。

複数のタッチを処理したい場合は、Touchサービスを使用する必要があり、現在、Touchリスナーをレイヤーに直接登録する方法はありません。そのため、グローバル リスナーを登録し、独自のヒット テストを行い、そのタッチが最初にヒットしたレイヤーにタッチの動きをマッピングする必要があります。

于 2012-05-26T04:30:21.367 に答える