3

私はcocos2dに非常に慣れていません..私はcocos2dを使用してAndroidでアプリケーションを開発しています..その中で、

public class BaseLayer extends CCLayer {

ChildLayer cl = new ChildLayer();
this.addChild(cl); ------------------------------>
}

public class ChildLayer extends CCLayer {

public ChildLayer() {
CCLayer.node();
}
.
.
}

この中で、矢印の付いた行は Null ポインター例外をスローします。エラー ログは以下のとおりです。

E/AndroidRuntime(982): FATAL EXCEPTION: GLThread 8
11-26 12:50:33.364: E/AndroidRuntime(982): java.lang.NullPointerException
11-26 12:50:33.364: E/AndroidRuntime(982): at org.cocos2d.nodes.CCSprite.draw(CCSprite.java:871)
11-26 12:50:33.364: E/AndroidRuntime(982): at org.cocos2d.nodes.CCNode.visit(CCNode.java:674)
11-26 12:50:33.364: E/AndroidRuntime(982): at org.cocos2d.nodes.CCNode.visit(CCNode.java:680)
11-26 12:50:33.364: E/AndroidRuntime(982): at org.cocos2d.nodes.CCNode.visit(CCNode.java:680)
11-26 12:50:33.364: E/AndroidRuntime(982): at org.cocos2d.nodes.CCNode.visit(CCNode.java:680)
11-26 12:50:33.364: E/AndroidRuntime(982): at org.cocos2d.nodes.CCDirector.drawCCScene(CCDirector.java:683)
11-26 12:50:33.364: E/AndroidRuntime(982): at org.cocos2d.nodes.CCDirector.onDrawFrame(CCDirector.java:651)
11-26 12:50:33.364: E/AndroidRuntime(982): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1332)
11-26 12:50:33.364: E/AndroidRuntime(982): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1116)
11-26 12:50:34.023: E/libEGL(982): call to OpenGL ES API with no current context (logged once per thread)

この問題を解決する方法がわかりません.なぜこれが起こるのかわかりません..私は Cocos2d にあまり詳しくないので..この問題を解決するのを手伝ってください. 誰か助けてください..

4

1 に答える 1

1

これは解決されました..コンストラクターでは、super() の代わりに CCLayer.node() のようなスーパークラスコンストラクターを呼び出しました。それを変更したところ、問題は解決しました..

于 2011-11-30T05:38:05.483 に答える