gpt4 book ai didi

java - 将 Actions.scaleTo() 添加到 LibGDX 中的标签

转载 作者:行者123 更新时间:2023-12-02 12:51:16 25 4
gpt4 key购买 nike

在 LibGDX 中,我想为我的游戏制作文本动画。因此,我希望我的标签随着时间的推移变得更大。但是,如果我使用 scaleTo() 方法,则不会发生任何事情,而 moveTo() 等其他操作则可以正常工作。

label1 = new Label("Test text", new Label.LabelStyle(font, Color.BLACK));
label2.addAction(Actions.parallel(Actions.moveTo(500, 300, 2.0f),Actions.scaleTo(0.1f, 0.1f,2.0f)));

label2 = new Label("Test text 2", new Label.LabelStyle(font, Color.BLACK));
label2.addAction(Actions.parallel(Actions.moveTo(500, 300, 2.0f),Actions.scaleTo(0.1f, 0.1f,2.0f)));

stage.addActor(label1);
stage.addActor(label2);

如何使我的标签缩放?预先感谢您!

最佳答案

出于性能原因,大多数 scene2d.ui 组默认将变换设置为 false。

更多详情可以查看
https://github.com/libgdx/libgdx/wiki/Scene2d.ui#rotation-and-scale

如果您想缩放,可以使用 Container,它对于设置单个小部件的大小和对齐方式很有用。

private Container<Label> container;

@Override
public void create() {
stage=new Stage();

Label label1 = new Label("Test text", new Label.LabelStyle(font, Color.BLACK));

container=new Container<Label>(label1);
container.setTransform(true); // for enabling scaling and rotation
container.size(100, 60);
container.setOrigin(container.getWidth() / 2, container.getHeight() / 2);
container.setPosition(100,200);
container.setScale(3); //scale according to your requirement

stage.addActor(container);
}

@Override
public void render() {
super.render();

Gdx.gl.glClearColor(1,1,1,1);
gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

stage.draw();
stage.act();
}

在容器而不是标签上添加您的操作。

container.addAction(Actions.parallel(Actions.moveTo(500, 300, 2.0f),Actions.scaleTo(0.1f, 0.1f,2.0f)));

关于java - 将 Actions.scaleTo() 添加到 LibGDX 中的标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42404452/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com