No se pueden obtener eventos en mi libgdx Actor

Estoy teniendo un rato duro que consigue acontecimientos que trabajan con mi Actor en libgdx. Estoy usando compilaciones nocturnas.

Mi etapa se configura en el método show() de una subclase Screen :

 stage = new Stage(Gdx.graphics.getWidth(), Gdx.graphics.getHeight(), true); Gdx.input.setInputProcessor(stage); TestActor actor = new TestActor(); stage.addActor(actor); 

Y mi clase de actor se parece a:

 class TestActor extends Actor { private Sprite sprite; private TextureAtlas atlas; public TestActor() { atlas = new TextureAtlas(Gdx.files.internal("textures/images-packed.atlas")); sprite = atlas.createSprite("logo-96"); setTouchable(Touchable.enabled); addListener(new InputListener() { public boolean touchDown (InputEvent event, float x, float y, int pointer, int button) { Gdx.app.debug(TestGame.TAG, "TestActor.touchDown()"); return true; // must return true for touchUp event to occur } public void touchUp (InputEvent event, float x, float y, int pointer, int button) { Gdx.app.debug(TestGame.TAG, "TestActor.touchUp()"); } }); } @Override public void draw(SpriteBatch batch, float parentAlpha) { Color color = getColor(); batch.setColor(color.r, color.g, color.b, color.a * parentAlpha); batch.draw(sprite, getX(), getY()); } } 

Los eventos no parecen disparar. Curiosamente, he utilizado built-in UI widgets como el TextButton y puede obtener esos eventos para disparar muy bien. ¿Alguien puede ver lo que estoy haciendo mal?

También debe setBounds a su actor. La mejor manera de hacerlo (si quieres el mismo tamaño que tu textura) agrega estas líneas a tu constructor:

 setWidth(sprite.getWidth()); setHeight(sprite.getHeight()); setBounds(0, 0, getWidth(), getHeight()); 

Aviso también puede establecer la ubicación de los límites con los primeros 2 parámetros.

  • Cómo cambiar pantallas en Scene2D libGDX
  • ¿Cuándo usar actores en libgdx? ¿Cuáles son contras y pros?
  • Pase ArrayList desde el módulo android a núcleo en libgdx
  • Cómo cargar imágenes como fondo en LibGDx?
  • libgdx spritebatch no dibuja basado en el origen de una textura
  • Puerto Andengine juego a otra plataforma?
  • Libgdx ScrollPane - ¿No se desplaza?
  • ¿Cuándo usar ShapeRenderer, Mesh + SpriteBatch, Box2D y Scene2D en Libgdx?
  • LibGDX dentro de la actividad de Android
  • 'SourceSets' no se puede aplicar a la advertencia de 'groovy.lang.closure' en Android Studio
  • LibGDX - Shader trabajando en el escritorio pero no en Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.