0

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

问题是,如果用户在倒计时时开始移动手指,一旦结束,onSceneTouchEvent 方法就会开始获取输入,但它会跳过 ACTION_DOWN 事件,因为用户已经在移动手指。

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

所以我在想,有没有办法在AndEngine中获取触摸输入事件(按下坐标的信息,这才是我真正需要的),这样我就可以通过简单地做我应该做的事情来“强制”ACTION_DOWN事件在倒计时的方法中使用它?

提前致谢!

4

1 回答 1

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;
}

这个例子的来源

于 2012-12-04T06:46:29.530 回答