我想知道如何在表格上检测触摸事件。虽然我已经尝试使用inputlistener,但它只会给我元素上的触摸。但是我希望可以在整个表格上检测到触摸。简而言之,我希望将我的表格转换为按钮。
我想知道如何在表格上检测触摸事件。虽然我已经尝试使用inputlistener,但它只会给我元素上的触摸。但是我希望可以在整个表格上检测到触摸。简而言之,我希望将我的表格转换为按钮。
ClickListener
。您可以像下面一样将 ClickListener 添加为“匿名类”。覆盖其 clicked
方法,并使用您的逻辑来摆脱对 .super
的调用,因为基本方法什么也不做。您可以访问提供的 InputEvent
中的特定详细信息,例如按下哪个按钮。 Table table = new Table();
//Might just be this line to have the table interact.
table.setTouchable(Touchable.enabled);
t.addListener(new ClickListener(){
@Override
public void clicked(InputEvent event, float x, float y) {
System.out.println("I got clicked!");
}
});
当然,为了点击表格,您需要将其扩展。如果您无法单击该表格,则应运行table.debug()
并确保在屏幕上看到表格边界,然后在其中单击。
Listener
中重写@touchUp
,而不是使用clicked
。但这可能会在释放时触发表格点击事件。因此,当你拖动时,你需要从表格中删除监听器。首先使用table.getListeners
获取所有监听器,然后遍历这些监听器并将它们从表格中移除。但是,当你停止滚动时,你必须再次添加它们。 - Madmenyo