未定义类型 Object 的方法 checkCollision(BoundingShape)
The method checkCollision(BoundingShape) is undefined for the type Object
我在这段代码的标题中遇到错误:
private boolean isOnGroud(LevelObject obj, Tile[][] mapTiles) {
ArrayList<Tile> tiles = obj.getBoundingShape().getGroundTiles(mapTiles);
obj.getBoundingShape().movePosition(0, 1);
for (Tile t : tiles) {
if (t.getBoundingShape() != null) {
if ((t.getBoundingShape()).checkCollision(obj.getBoundingShape())) {
obj.getBoundingShape().movePosition(0, -1);
return true;
}
}
}
具体在:"if ((t.getBoundingShape()).checkCollision(obj.getBoundingShape()))"
知道为什么吗?此错误的红线在 .checkCollision 下,这里是完整 Class 文件代码的 link:http://pastebin.com/P6Q8v40m
原因很简单,方法returns一个Object
,根本就没有方法checkCollision()
。您需要将其转换为具有此方法的类型。
我在这段代码的标题中遇到错误:
private boolean isOnGroud(LevelObject obj, Tile[][] mapTiles) {
ArrayList<Tile> tiles = obj.getBoundingShape().getGroundTiles(mapTiles);
obj.getBoundingShape().movePosition(0, 1);
for (Tile t : tiles) {
if (t.getBoundingShape() != null) {
if ((t.getBoundingShape()).checkCollision(obj.getBoundingShape())) {
obj.getBoundingShape().movePosition(0, -1);
return true;
}
}
}
具体在:"if ((t.getBoundingShape()).checkCollision(obj.getBoundingShape()))"
知道为什么吗?此错误的红线在 .checkCollision 下,这里是完整 Class 文件代码的 link:http://pastebin.com/P6Q8v40m
原因很简单,方法returns一个Object
,根本就没有方法checkCollision()
。您需要将其转换为具有此方法的类型。