cocos2d-xjs绑定自定义类型-创新互联

1、在conversions.yaml文件添加要绑定的类型转换函数:文件所在目录:

创新互联建站主营潍坊网站建设的网络公司,主营网站建设方案,重庆APP开发公司,潍坊h5重庆小程序开发公司搭建,潍坊网站营销推广欢迎潍坊等地区企业咨询

cocos2d-x js 绑定自定义类型

添加的内容如下:

cocos2d-x js 绑定自定义类型

Int1DArray 是我要绑定的结构体。然后绑定要使用的相关文件。(类文件和头文件)

2、新建一个js项目,将绑定好的文件和源文件加入到项目中.(怎么加自己想吧!)

3、修改ScriptingCore类

头文件中声明:

Int1DArray* jsval_to_int1darray(JSContext *cx, jsval v);

类文件中实现:

Int1DArray*jsval_to_int1darray(JSContext *cx, jsval v)

{

JSObject *arr;

if (JS_ValueToObject(cx, v,&arr) && JS_IsArrayObject(cx, arr)) {

uint32_t len = 0;

JS_GetArrayLength(cx, arr, &len);

Int1DArray *int2d=(Int1DArray*)malloc(sizeof(Int1DArray));

    int2d->value=(int*)malloc(sizeof(int)*len);

    int2d->length=len;

for (int i=0; i < len;i++) {

jsval elt;

int temp;

if (JS_GetElement(cx, arr,i, &elt) && JS_ValueToInt32(cx, elt, &temp)) {

         int2d->value[i]= temp;

      }

    }

return int2d;

  }

returnNULL;

}

4、在hello.js中找个合适的位置测试代码:

varmysqlite=sql.MySQLite.create('cgw.db');

if(mysqlite.open()){

  mysqlite.createTable("UserInfo","(ID intprimary key , UserName char, PassWord char)");

  mysqlite.insert("UserInfo", "(ID,UserName,PassWord)values(1,'kfqcome','123456')");

var a=new Array(1,2,3);

  mysqlite.insert("UserInfo", "(ID,UserName,PassWord)values(2,'miss wang','654321')",array);

  mysqlite.selectAll("UserInfo");

   }

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


新闻名称:cocos2d-xjs绑定自定义类型-创新互联
本文URL:http://hbruida.cn/article/hdijj.html