如何获得AndEngine的位置?

时间:2014-10-27 12:46:14

标签: andengine

我是AndEngine的新人,现在对我来说太难了。  我想知道当我触摸任何地方时触摸的位置,并通过x和y给出那些位置的动作。有人能帮助我吗?

1 个答案:

答案 0 :(得分: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中。