LibGdx'te Actor
ile çalışmam için zor bir zaman geçiriyorum. Ben gece yapıları kullanıyorum.Libgdx Aktörümde çalışan olaylar alınamıyor
Benim sahne bir Screen
alt sınıfının show()
yönteminde kurgusunda:
stage = new Stage(Gdx.graphics.getWidth(), Gdx.graphics.getHeight(), true);
Gdx.input.setInputProcessor(stage);
TestActor actor = new TestActor();
stage.addActor(actor);
Ve aktör sınıfı gibi görünür:
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());
}
}
olaylar yangın görünmüyor. Garip bir şekilde, TextButton
gibi yerleşik UI widget'ları kullandım ve bu olayları iyi bir şekilde ateş etmeye başlayabilirim. Neyi yanlış yaptığımı gören var mı?
Evet! Teşekkür ederim! Bu hatlarda bir şey olup olmadığını merak ediyordum. –