Box2d& Libgdx联系人监听器和非活动状态

时间:2013-12-05 00:44:44

标签: java android box2d libgdx

我正在使用Java中的libgdx,box2d处理项目。

这就是我的计划所做的事情:

_当两个灯具碰撞时,将灯具的一个主体设置为不活动'

   myBody.setActive(false);

问题:

我注意到当我放这行时,我在logcat中得到致命信号11(SIGSEGV)在0x00000004(代码= 1),这可能是因为非活动主体仍然在ContactListener中。 / p>

我的主程序中只有1个ContactListener类。

如何删除/添加Body到ContactListener? 我不知道这是否是解决方案,但我想,你能帮助我吗?我不知道如何解决这个问题。

1 个答案:

答案 0 :(得分:4)

这是因为监听器中的联系处理在world.step内部发生,并且在运行时世界被阻止。

例如,您可以将其添加到列表中,以便在world.step结束后将其设置为非活动状态。