4

私はAndEngineを初めて使用し、指の座標を使用して線を引きたいとonSceneTouchEvent思っています。私が知っていることはすべて実行しましたが、それは正しいと思いますが、それを機能させない何かがあります。何ができるかわかりません。 t 問題を検出:/

    private Scene scene;
float startX;
float startY;
float lastX;
float lastY;
int lineUsageCount = 0;

@Override
    public boolean onSceneTouchEvent(Scene pScene, TouchEvent pSceneTouchEvent) {
        switch (pSceneTouchEvent.getAction()) {
        case MotionEvent.ACTION_DOWN:

            startX = pSceneTouchEvent.getX();
            startY = pSceneTouchEvent.getY();
            lineUsageCount = 0 ;

        break;
        case MotionEvent.ACTION_MOVE:

            lineUsageCount++;
            lastX = pSceneTouchEvent.getX();
            lastY = pSceneTouchEvent.getY();

        break;
        case MotionEvent.ACTION_UP:

            if (lineUsageCount <= 5) {
                final Line line = new Line(startX, startY, lastX,
                                lastY, this.getVertexBufferObjectManager());

                line.setLineWidth(1);
                line.setColor(255, 255, 255);
                scene.attachChild(line);

        }

        break;
    }   
    return true;
    }
};

最初の座標startX, startYを取得しAction_Moveてから、 を取得しlastX, lastYて線を描画する必要がありますが、機能していないようです:|

4

1 に答える 1

5

問題はこのコード行にあります:if (lineUsageCount <= 5) { 指を動かしている間lineUsageCount、5 をはるかに超えます。この変数をデバッグし、「IF」で変更するか、この「IF」をコードから削除します。

于 2013-01-02T07:23:26.137 に答える