LibGDX如何从clickListener获取按钮
问题描述:
说实话,我不知道我做错了什么。我想从ClickListener
得到ImageButton
对象,但出了点问题。LibGDX如何从clickListener获取按钮
public void createButton() {
button = new ImageButton(this.skin);
buttonUnitsList.add(button);
button.addListener(new ClickListener() {
@Override
public void clicked(InputEvent event, float x, float y) {
selectedUnit = buttonUnitsList.indexOf(this.getButton());
}
});
}
答
要获得Actor
例如哪个事件被解雇,你需要使用getTarget()
事件的方法。如果你确信听众将只使用按钮,你可以从Actor
上溯造型这Button
selectedUnit = buttonUnitsList.indexOf((Button)event.getTarget());
请注意,如果你使用的侦听器另一种类型的演员,你会得到铸造异常
+0
它为我工作。我不能将Actor投影到ImageButton,但我得到了父母,现在它正在工作。谢谢。 – Overborr
+0
高兴地帮助,如果答案解决您的问题,您可以[接受](http://*.com/help/accepted-answer) –
“什么“?你有错误吗?你试过了吗? –
不,我没有错误,但点击后selectedUnit值的所有按钮总是相同的。 – Overborr
getButton()是什么?我猜它会返回'button',它将永远是最后创建的按钮。 –