1. 程式人生 > >OC和Cocos-js的互相調用

OC和Cocos-js的互相調用

names index order rec bind str lba tin recorder

OC調用cocos-js

#import "ScriptingCore.h"
#import "cocos2d.h"
#include "scripting/js-bindings/manual/ScriptingCore.h"
#include "scripting/js-bindings/manual/jsb_conversions.hpp"
#include "scripting/js-bindings/jswrapper/SeApi.h"
#define JSCallBackHasVoice @"cc.director.getScene().getChildByName(‘Canvas‘).getComponent(‘OCRecorder‘).hasVoice"
//hasVoice是cocos-js的方法
+ (void)JsCallBack:(NSString *)funcNameStr WithIndex:(NSInteger)index{
    std::string funcName = [funcNameStr UTF8String];
    NSString *numberStr  = [NSString stringWithFormat:@"%ld",index];
    std::string coins = [numberStr UTF8String];
    std::string jsCallStr = cocos2d::StringUtils::format("
%s(\"%s\");",funcName.c_str(), coins.c_str()); se::ScriptEngine::getInstance()->evalString(jsCallStr.c_str()); }

OC和Cocos-js的互相調用