0

我有一个 tiled.tmx 文件正在加载到 andengine 中。但我不断得到这个空指针

10-31 21:15:08.383: ERROR/AndroidRuntime(6508): FATAL EXCEPTION: main
10-31 21:15:08.383: ERROR/AndroidRuntime(6508): java.lang.NullPointerException
10-31 21:15:08.383: ERROR/AndroidRuntime(6508):     at com.fttech.test_ninja.Ninja_FightActivity.onLoadScene(Activity.java:117)

这是空指针指向我的地方,我不知道为什么。

try {
        final TMXLoader tmxLoader = new TMXLoader(this, this.mEngine
                        .getTextureManager(), // TextureOptions.BILINEAR_PREMULTIPLYALPHA,
                        TextureOptions.NEAREST);
        this.mTMXTiledMap = tmxLoader.loadFromAsset(this, "tmx/TileMao.tmx");
} catch (final TMXLoadException tmxle) {
        Debug.e(tmxle);
}


tmxLayer = this.mTMXTiledMap.getTMXLayers().get(0);
SceneMainScene.attachChild(tmxLayer);
4

2 回答 2

1

确保mEngine不是null并且mTMXTiledMap.getTMXLayers()不返回null

于 2011-11-01T06:00:21.563 回答
0

您将需要添加足够多的调试代码来确定哪些原因无法为您返回有效的引用,或者只需使用 Eclipse 中的调试器逐步检查代码。我的猜测是 loadFromAsset 调用失败,因此 mTMXTiledMap 为 NULL 并且您对 getTMXLayers 的调用失败。如果是这种情况,您需要查看为什么该调用无法找到您的 tmx 文件。

于 2011-11-01T03:15:39.543 回答