我是Java和libgdx的新手,并且不了解那些重要的东西。 我尝试触摸(鼠标)事件。 在我在下面的代码中添加几行之前,我的代码示例工作正常:
...
import com.badlogic.gdx.Input.Buttons;
import com.badlogic.gdx.InputProcessor;
...
public class Game implements ApplicationListener /*, InputProcessor*/
...
@Override
public void create()
{
Gdx.input.setInputProcessor(this);
//*** ERROR:setInputProcessor(InputProcessor) in the type Input
//is not applicable for the arguments Game
...
}
...
@Override
public boolean touchDown (int x, int y, int pointer, int button) {
//*** ERROR: The method touchDown(int, int, int, int) of type Game
//must override or implement a supertype method
Gdx.app.log("Input Test", "touch down: " + x + ", " + y + ", button: " +
getButtonString(button));
return false;
}
}
}
我使用了this example 也许我必须写“类InputTest扩展GdxTest”? 但是如果我插入“import com.badlogic.gdx.tests.utils.GdxTest;”我就会收到错误。
在互联网上的许多例子中都没有“导入”行 和库名称,应添加到项目中。 任何人都可以解释如何找到它吗?
由于
答案 0 :(得分:2)
第一个错误
ERROR:setInputProcessor(InputProcessor) in the type
Input is not applicable for the arguments Game
您传入的this
引用类型为Game
,但Gdx.input.setInputProcessor
需要一个引用InputProcessor
对象的参数
为了完全理解第二个错误,您需要了解Overriding 见http://www.tutorialspoint.com/java/java_overriding.htm
如果您取消注释应该摆脱该错误的implements InputProcessor
。