我有一个屏幕并创建了一个新的多路复用器并设置了一个输入处理器。
如何覆盖屏幕上的keyDown?
public class Screen implements Screen, TextInputListener
{
...stuff...
public Screen(Game game)
{
multiplexer = new InputMultiplexer();
multiplexer.addProcessor(mySystem);
multiplexer.addProcessor(aStage);
Gdx.input.setInputProcessor(multiplexer);
}
...more stuff....
}
由于
答案 0 :(得分:3)
要覆盖KeyDown,您需要实现InputProcessor。
例如,如果您想要覆盖PC上的Android Back按钮和Backspace按钮,您可以使用这样的类。
public class ScreenInputHandler implements InputProcessor {
@Override
public boolean keyDown(int keycode) {
if(keycode == Keys.BACK || keycode == Keys.BACKSPACE){
...code here
}
return false;
}
}
请记住将输入处理程序添加到InputMultiplexer。
答案 1 :(得分:0)
这就是我最终解决问题的方法:
InputProcessor backProcessor = new InputAdapter()
{
@Override
public boolean keyDown(int keycode)
{
//do stuff
return false;
}
};
multiplexer.addProcessor(backProcessor);