LibGdx - GestureDetector中的PanStop在哪里?

时间:2014-02-22 12:15:04

标签: java android libgdx gesturedetector

我有一个实现GestureListener的Screen类,但它没有提供PanStop方法(在LibGdx JavaDocs和Wiki中提到)

此方法已被删除(文档已过期),还是我遗漏了某些内容?

如果是前者,那么如何检测并处理触摸或平移?

感谢。

编辑:实施增加....

package com.me.mygdxgame;

import com.badlogic.gdx.Gdx;
import java.util.Random;
import com.badlogic.gdx.Game;
import com.badlogic.gdx.Screen;
import com.badlogic.gdx.graphics.GL10;
import com.badlogic.gdx.input.GestureDetector;
import com.badlogic.gdx.input.GestureDetector.GestureListener;
import com.badlogic.gdx.math.Rectangle;
import com.badlogic.gdx.math.Vector2;
import com.badlogic.gdx.scenes.scene2d.Stage;
import com.badlogic.gdx.scenes.scene2d.actions.MoveToAction;
import com.badlogic.gdx.utils.Array;
import com.me.mygdxgame.actors.ActorJ;

public class JGameScreen implements Screen, GestureListener {

final MyGdxGame game;

private Stage stage;

private GameGrid gameGrid;  

// Constructor & Init Screen 
//
public JGameScreen(final MyGdxGame gam) {
    game = gam;
    stage = new Stage();
    stage.setViewport(600, 600, true);
    gameGrid = new GameGrid(stage, 10, 10); 
}



// GestureListener Events
//
@Override
public void show() {
    // TODO Auto-generated method stub
    Gdx.input.setInputProcessor(new GestureDetector(this));
}

@Override
public boolean touchDown(float x, float y, int pointer, int button) {
    // TODO Auto-generated method stub
    //chain = gameGrid.getChain();      
    return false;
}


@Override
public boolean pan(float x, float y, float deltaX, float deltaY) {
    // TODO Auto-generated method stub
    vector2 = stage.screenToStageCoordinates(vector2.set(x,y));
    gameGrid.get(25).setPosition(vector2.x, vector2.y);
    return true;
}

@Override
public boolean fling(float velocityX, float velocityY, int button) {
    // TODO Auto-generated method stub
    return false;
}

@Override
public void hide() {
    // TODO Auto-generated method stub
    Gdx.input.setInputProcessor(null);
}   


@Override
public void render(float delta) {

    // TODO Auto-generated method stub
    Gdx.gl.glClearColor( 0.9f, .04f, 0.2f, 1);
    Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
    stage.act(delta);
    stage.draw();

}

@Override
public void resize(int width, int height) {
    // TODO Auto-generated method stub
    stage.setViewport(game.WIDTH, game.HEIGHT, true);
    stage.getCamera().translate(-50, -50, 0);
}

@Override
public void pause() {
    // TODO Auto-generated method stub

}

@Override
public void resume() {
    // TODO Auto-generated method stub

}

@Override
public void dispose() {
    // TODO Auto-generated method stub

}


@Override
public boolean tap(float x, float y, int count, int button) {
    // TODO Auto-generated method stub
    return false;
}


@Override
public boolean longPress(float x, float y) {
    // TODO Auto-generated method stub
    return false;
}


@Override
public boolean zoom(float initialDistance, float distance) {
    // TODO Auto-generated method stub
    return false;
}


@Override
public boolean pinch(Vector2 initialPointer1, Vector2 initialPointer2,
        Vector2 pointer1, Vector2 pointer2) {
    // TODO Auto-generated method stub
    return false;
}

}

1 个答案:

答案 0 :(得分:0)

上周我得到了夜间版本,我可以在GestureListener界面中看到panStop。奇怪的问题。