访问jni main.cpp中的运行场景(cocos2d-x)

时间:2012-05-02 17:49:04

标签: android-ndk cocos2d-x

我想在jni main.cpp中访问我的场景但是当我打电话给cocos2d::CCDirector::sharedDirector()->getRunningScene()时我无法得到它! 我的代码:

void Java_tehrannama_test_tehrannama2_zoomIn(JNIEnv* env, jobject thiz,jfloat s) {

__android_log_print(ANDROID_LOG_DEBUG, "zoom1", "zooom");
    HelloWorld* helloworld = dynamic_cast<HelloWorld*>(cocos2d::CCDirector::sharedDirector()->getRunningScene());
    helloworld->zoomin(s);
    helloworld->center.x = helloworld->center.x -10000;
}

我没有其他场景,那么helloworld。

1 个答案:

答案 0 :(得分:2)

我发现问题其实是我的错!我的helloworld层添加为当前场景的子项,解决方案是在添加时标记helloworld,然后得到它:

HelloWorld* helloworld = dynamic_cast<HelloWorld*>(cocos2d::CCDirector::sharedDirector()->getRunningScene()->getChildByTag(1));