LibGdx:Tween引擎上的Tween回调

时间:2016-01-16 12:05:35

标签: java libgdx tween

我正在关注以下tutorial我创建了一个按钮,但现在当我编写TweenCallback时,它应该在动画结束时显示按钮。然而它不起作用,最终导致闪屏渐入淡出。这是我的启动画面代码。

public class Splash implements Screen{
private Sprite splash;
private SpriteBatch batch;
private TweenManager tweenManager;

@Override
public void render(float delta) {
    Gdx.gl.glClearColor(0, 0, 0, 1);
    Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
    tweenManager.update(delta);
    batch.begin();
    splash.draw(batch);
    batch.end();

}

@Override
public void resize(int width, int height) {

}

@Override
public void show() {
    tweenManager = new TweenManager();
    Tween.registerAccessor(Sprite.class, new SpriteAccessor());
    batch = new SpriteBatch();
    Texture splashTexture = new Texture ("Backgrounds/openingScreen.png");
    splash = new Sprite(splashTexture);
    splash.setSize(Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
    Tween.set(splash, SpriteAccessor.ALPHA).target(0).start(tweenManager);
    Tween.to(splash, SpriteAccessor.ALPHA, 3f).target(1).repeatYoyo(1, 0f).setCallback(new TweenCallback() {

        @Override
        public void onEvent(int type, BaseTween<?> source) {
            ((Game)Gdx.app.getApplicationListener()).setScreen(new MainMenu());
        }
    }).start(tweenManager);
}

我知道问题不在于按钮,因为我在我的主类中尝试使用setScreen(new MainMenu());然后按钮出现。现在我在这里,我不明白为什么它不会出现。本教程工作正常,我还根据教程中的源代码检查了我的代码。 有任何想法吗? 感谢

1 个答案:

答案 0 :(得分:0)

答案:原来我已经在MainMenu课程中注释了屏幕的初始绘图,这就是为什么它没有工作