Android(AndEngine):如何在onSceneTouchEvent方法之外获取触摸输入事件?

时间:2012-12-03 10:13:04

标签: android input touch andengine

所以,这是我的问题:在我的游戏中,我在游戏开始时进行了倒计时,在此期间用户无法按下屏幕,所以我等到倒计时结束才能启用OnSceneTouchListener。一旦启用,用户就可以移动手指(不重要的是)。

问题在于,如果用户在倒计时时开始移动手指,则只要onSceneTouchEvent方法开始获取输入,它就会跳过ACTION_DOWN事件,因为用户已经移动了手指。

为了防止这种情况,我当然可以在onSceneTouchEvent方法中使用布尔值,但是这样它总是会检查每个输入。它不会对性能产生太大影响,但如果可能的话,我宁愿找到另一种方式。

所以我在想,是否有一种方法可以让AndEngine获得触摸输入事件(按下坐标的信息,这就是我真正需要的),这样我就可以通过简单的操作来“强制”ACTION_DOWN事件在倒计时的方法中我应该怎么做?

提前致谢!

1 个答案:

答案 0 :(得分:0)

这是一个例子,你如何获得触摸坐标。

public boolean onTouchEvent(MotionEvent event) {
    int myEventAction = event.getAction(); 

    float X = event.getX();
float Y = event.getY();

    switch (myEventAction) {
       case MotionEvent.ACTION_DOWN:
        break;
       case MotionEvent.ACTION_MOVE: {
            mySprite.setPosition(X, Y);
            break;}
       case MotionEvent.ACTION_UP:
            break;
    }
    return true;
}

Source of this example