6

我需要在 LibGDX 中临时隐藏标签或图像,因此我可以根据传递的值将按钮的一部分设置为图像或文本,我已经尝试过:

public void SetScore(int score)
{
    if(score<0)
    {
        highScore.setWidth(0);
        lockImage.setWidth(50);
    }
    else
    {
        highScore.setText(Integer.toString(score));
        highScore.validate();
        lockImage.setWidth(0);
    }
}

它完全失败了,有谁知道如何做到这一点?

4

1 回答 1

8

假设它们是标准的 Scene2d 小部件,只需在您想查看它们时使用 setVisible(true) 并在不查看时使用 setVisible(false)。

沿着这些路线的东西......

public void SetScore(int score)
{
    if(score<0)
    {
        highScore.setVisible(false);
        lockImage.setVisible(true);
    }
    else
    {
        highScore.setVisible(true);
        highScore.setText(Integer.toString(score));
        highScore.validate();
        lockImage.setVisible(false);
    }
}

如果它们在屏幕上占据相同的空间,那么您可能需要考虑将它们放在 Stack 上。

于 2013-02-01T22:51:02.020 回答