Libgdx ClickListener,不声明Stage
我想使用clicklisterner而不创建stage。我的代码如下:Libgdx ClickListener,不声明Stage,libgdx,Libgdx,我想使用clicklisterner而不创建stage。我的代码如下: ClickListener ck = new ClickListener( @Override public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) { handleClick(event); return super.touchDown(ev
ClickListener ck = new ClickListener(
@Override
public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) {
handleClick(event);
return super.touchDown(event, x, y, pointer, button);
});
Image button = new Image(buttonTexture);
button.addListerner(ck);
handleClick(Event event){
if(event.getListenerActor==button)
{
System.out.print('pressed');
}
}
除非我使用stage,否则这些代码不起作用。出于好奇,是否有任何可选的clicklistener用法不涉及声明阶段,以便我可以最小化代码?
clicklistener
是一个EventListener
,打算通过scene2d接收事件
阶段
是一个输入处理器,它接收输入事件并将其发送到适当的参与者
如果您不想使用Stage(scene2d inputprocessor),请使用自己的inputprocessor
或InputAdapter
(只是一个适配器类)
InputProcessor
用于接收来自键盘和触摸屏(桌面上的鼠标)的输入事件。为此,必须使用Input.setInputProcessor(InputProcessor)
方法注册它。在调用ApplicationListener之前的每一帧都会调用它。render()
ClickListener
是一个EventListener
,打算通过scene2d接收事件
阶段
是一个输入处理器,它接收输入事件并将其发送到适当的参与者
如果您不想使用Stage(scene2d inputprocessor),请使用自己的inputprocessor
或InputAdapter
(只是一个适配器类)
InputProcessor
用于接收来自键盘和触摸屏(桌面上的鼠标)的输入事件。为此,必须使用Input.setInputProcessor(InputProcessor)
方法注册它。在调用ApplicationListener.render()
之前,每个帧都会调用它