2014-10-27 52 views
0

我是AndEngine的新成员,现在对我来说有太多困难的事情了。 我想知道当我触摸任何地方时我碰到了什么,并且通过x和y这些位置给予动作。有谁能够帮助我?如何在AndEngine中触摸位置?

+0

你到目前为止尝试过哪些代码? – 2014-10-27 12:48:13

+0

我用onclicklistener试了一下,我在这里看到http://youtu.be/Q0kjiIH6u-M。 – 2014-10-28 13:28:51

回答

0

通过AndEngine示例。有两种方法。要么你对实体注册的触摸,例如如图中TouchAndDrag例如:

final Sprite sprite = new Sprite(centerX, centerY, this.mFaceTextureRegion, this.getVertexBufferObjectManager()) { 
     @Override 
     public boolean onAreaTouched(final TouchEvent pSceneTouchEvent, final float pTouchAreaLocalX, final float pTouchAreaLocalY) { 
      this.setPosition(pSceneTouchEvent.getX() - this.getWidth()/2, pSceneTouchEvent.getY() - this.getHeight()/2); 
      return true; 
     } 
    }; 

您也可以使用触摸监听器上的场景。你必须实现IOnSceneTouchListener然后将其设置在场景:

public class MyListener implements IOnSceneTouchListener { 

    @Override 
    public boolean onSceneTouchEvent(Scene pScene, final TouchEvent pSceneTouchEvent) { 
     if (pSceneTouchEvent.isActionDown()) { 
       //execute action. 
      } 
      return false; 
     } 
    } 
} 

... 

scene.setOnSceneTouchListener(new MyListener()); 

你可以找到大部分已经例子所需要的代码。 See this tutorial关于如何将它们添加到Eclipse。

+0

谢谢!我不知道那个例子... – 2014-11-01 11:10:41