如何使用box2d创建UserData

时间:2014-07-06 04:20:15

标签: java libgdx box2d

我正在尝试将Userdata添加到Body:

Body body = world.createBody(foo);  
body.setUserData(ObjectStuff);

当我检索数据时,它将始终返回null。我知道这是因为我设置数据的方式。

编辑:

我会直接从正文中检索数据,现在我看到这样做可能会有问题。

Array<Body> bodies = new Array<Body>;
world.getBodies(bodies);
for(int i=0; i<bodies.size;i++) {
    Body body = bodies.get(i);
    Object foo = (Object) body.getUserData();
}

1 个答案:

答案 0 :(得分:1)

您以正确的方式设置用户数据,从body显示您获取该数据的代码。另外,请务必致电:fixtureA.getBody().getUserData();,而不仅仅是fixtureA.getUserData();。夹具和主体具有不同的用户数据。