我已经制作了这个Button类来捕捉Pointer事件:
public class Button implements Pointer.Listener {
public void initLayer(Image defaultImage) {
layer = parent.createImageLayer(this.defaultImage);
layer.addListener(this);
}
...
如果我触摸其中一个实例化按钮,我会得到onPointerStart& onPointerEnd事件。但是,如果我的某个按钮已被触摸并且我开始触摸另一个按钮,则我没有得到第二个按钮的onPointerStart事件。
有没有办法用playn获得这些多点触控事件?
答案 0 :(得分:6)
Pointer
服务旨在通过简单的触摸交互或鼠标交互进行抽象。因此,它不支持任何类型的多点触摸交互。除Pointer
服务之外,您不会收到有关第一次触摸的通知。
如果要处理多个触摸,则必须使用Touch
服务,目前无法直接在图层上注册Touch
个侦听器。因此,您必须注册一个全局侦听器并进行自己的命中测试,并将触摸动作映射到该触摸首次触及的图层等。