【求助】如何从Objective-C呼叫JS

http://www.cocos2d-x.org/docs/manual/framework/html5/v3/reflection-oc/en
比如这篇文章里面的alert。我想实现当按下确定的时候,返回true。按下取消的时候,返回false。应该怎么写啊?

android的情况下:可以调用这个函数Cocos2dxJavascriptJavaBridge.evalString(“cc.log(“Javascript Java bridge!”)”);

Objective-C的时候应该怎么调回啊?

我也遇到一樣的問題

好像要通过C++来呼叫JS的全局函数

具体还不是很清楚,查了很多网站 貌似是要运用scriptingCore
C++的地方
jsval ret;
ScriptingCore::getInstance()->evalString(“cpp_callback()”, &ret);

JS的话写个全局函数
function cpp_callback(){
cc.log(“be called from C”);
}

但是 我执行的时候却出现 cocos2d:JS cpp_callback not defined

不知道如何解决。:6:

This is working on my side (if you don’t care about the return value of your JS function):

Put this in a *.mm file (as a method of a NSObject subclass for instance):

  • (void) callJS:(NSString *)expressionToEval {
    ScriptingCore * sc = ScriptingCore::getInstance();
    if (sc) {
    const char * strToEval = ;
    sc->evalString(strToEval, NULL);
    }
    }
    Then call:

;
I don’t know yet if there might be thread issues. In this case I might need to wrap my ScriptingCore call in:

cocos2d::Director::getInstance()->getScheduler()->performFunctionInCocosThread(=](){ });