尝试在AndEngineExampleLauncher中运行Text示例时的Stackoverflow

时间:2011-09-30 08:35:27

标签: android andengine

嘿游戏引擎大家,

对于那些使用AndEngine for Android的人来说,这是一个问题。

我在使用AndEngineExampleLauncher的Text示例时遇到了问题!

抛出以下异常:

09-30 10:11:19.940: ERROR/AndroidRuntime(466): FATAL EXCEPTION: main
09-30 10:11:19.940: ERROR/AndroidRuntime(466): java.lang.StackOverflowError
09-30 10:11:19.940: ERROR/AndroidRuntime(466):     at org.anddev.andengine.ui.activity.BaseGameActivity.getFontManager(BaseGameActivity.java:137)
09-30 10:11:19.940: ERROR/AndroidRuntime(466):     at org.anddev.andengine.ui.activity.BaseGameActivity.getFontManager(BaseGameActivity.java:137)
09-30 10:11:19.940: ERROR/AndroidRuntime(466):     at org.anddev.andengine.ui.activity.BaseGameActivity.getFontManager(BaseGameActivity.java:137)

我用谷歌搜索了这个错误,似乎其他一些人有同样的问题,但我找不到任何解决方案!

有没有人能够让这个例子在没有得到这个80年代的情况下工作90年代StackOverflowError!。

非常感谢您的帮助。

谢谢, 穆罕默德·卡里姆

1 个答案:

答案 0 :(得分:4)

这很奇怪,但我花了时间从AndEngine src调试AndEngine BaseGameActivity.java类,我找到了问题的原因:

这是随附的getFontManger()方法:

    public FontManager getFontManager() {
    return this.getFontManager();
}

这是典型的StackOverFlow原因......非常经典的原因。

我已将此方法更改为:

    public FontManager getFontManager() {
    return this.mEngine.getFontManager();
}

AndEngine Text示例现在就像魅力一样。

因此,以下是我为使AndEngine Text示例正常工作所采取的步骤: 1-转到AndEngine项目(导入游戏的源代码) 2-转到上课org.anddev.andengine.ui.activity.BaseGameActivity.java 3-转到方法:getFontManager() 4-更改返回值 From:return this.getFontManager(); 要:返回this.mEngine.getFontManager();

我希望这可以为任何有同样问题的人提供帮助

非常感谢@ Nicolas Gramlich 为创造如此令人难以置信的游戏引擎而付出的巨大努力。

谢谢, 穆罕默德。