java Libgdx管理单个Clicklistener的问题
在Libgdx中,我试图在按下特定按钮时将Clicklistener设置为特定环境
public void setExamine(final ClickListener cl) {
examine.addListener(cl);
}
这是我从一个类中获得的代码,可以通过以下操作从另一个类中访问:
table.setExamine(new ClickListener(){...});
但是,这样做意味着每次都会添加一个新的ClickListener
有没有办法让它管理一个单击侦听器而不是添加一个,而不是让它发生这种情况?我试过使用
public void setExamine(final ClickListener cl) {
examine.clearListeners();
examine.addListener(cl);
}
但它似乎完全删除了按钮点击的任何功能
# 1 楼答案
您可以在类中保存传递给setExamine方法的“cl”引用。然后,您可以首先在setExamine方法中删除这个特定的侦听器。我假设他是一个场景演员
如果您想应用像clearListeners()这样的解决方案,您应该保留按钮的默认侦听器