2012-05-02 3 views
2

Я хочу получить доступ к своей сцене в jni main.cpp, но когда я звоню cocos2d::CCDirector::sharedDirector()->getRunningScene(), я не мог получить его! мой код:Доступ к сценарию запуска в jni main.cpp (cocos2d-x)

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.

+0

Могу ли я узнать, почему вы хотите это сделать? –

+0

Я хочу использовать sdk ui и взаимодействовать между моим кодом cocos2d-x и java-кодом. – Ocelot

ответ

2

Я нашел проблему на самом деле своей ошибкой! мой слой helloworld добавлен как дочерний элемент текущей сцены, и решение должно пометить helloworld при добавлении, а затем получить его как:

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

 Смежные вопросы

  • Нет связанных вопросов^_^