Textbutton无法正常工作和缩放问题

时间:2018-08-31 17:21:10

标签: libgdx scene2d

我用scened2d创建了一个包含按钮的表,但是这些按钮存在很多问题。

第一个问题是缩放,每当我尝试设置按钮的with和height时都会出现问题 当我用:

设置它时
table.add(btn).with(100).height(30);

btnStyle.up.setMinWidth(80);
btnStyle.up.setMinHeight(40);
btnStyle.down.setMinWidth(80);
btnStyle.down.setMinHeight(40);

按钮已正确缩放,但背景显示异常

Buttons][1

但是如果我不设置它们的with和height,它们的背景是正常的,但是按钮太大了

第二个问题,按钮无法“正常运行”,因为我当时无法单击(什么都没有改变) 这是代码

// style
final Skin skin = new Skin(Gdx.files.internal("skin/glassy-ui.json"));
final BitmapFont font = skin.getFont("font");
final TextButton.TextButtonStyle btnStyle = new TextButton.TextButtonStyle();
btnStyle.font = font;
btnStyle.up = skin.getDrawable("button");
btnStyle.down = skin.getDrawable("button-down");
btnStyle.up.setMinWidth(80);
btnStyle.up.setMinHeight(40);
btnStyle.down.setMinWidth(80);
btnStyle.down.setMinHeight(40);

// buttons
Textbutton btn = new TextButton("some text", btnStyle);

我如何正确缩放按钮,什么会导致按钮停止工作?

(关于按钮缩放的问题已经存在,但并没有太大帮助)

2 个答案:

答案 0 :(得分:1)

要获得按钮的点击,您必须添加一个ChangeListener。

您用作按钮背景的资产太大,或者其填充太大。使用Skin Composer获取皮肤预览。

答案 1 :(得分:0)

在按钮不起作用的情况下,您还记得在舞台上调用setInputProcessor吗?