1、读取cocosStudio导出的json文件
var json = ccs.load("ccs-res/cocosui/UITest/UITest.json");
var widget = json.node;
this.addChild(widget, -1);
2、解析单独的一个控件
var btn = ccui.helper.seekWidgetByName(widget, "Button_1_2_6_10");
btn.addClickEventListener(function()
{
cc.log("btn click");
});
var listener1 = cc.EventListener.create(
{
event:cc.EventListener.TOUCH_ONE_BY_ONE,
swallowTouches: true,
onTouchBegan: function (touch, event)
{
var target = event.getCurrentTarget();
var locationInNode = target.convertToNodeSpace(touch.getLocation());
var s = target.getContentSize();
var rect = cc.rect(0, 0, s.width, s.height);
if (cc.rectContainsPoint(rect, locationInNode))
{
cc.log("sprite began... x = " + locationInNode.x + ", y = " + locationInNode.y);
return true;
}
return false;
},
onTouchMoved: function (touch, event)
{
var target = event.getCurrentTarget();
//var delta = touch.getDelta();
//target.x += delta.x;
//target.y += delta.y;
},
onTouchEnded: function (touch, event)
{
var target = event.getCurrentTarget();
cc.log("sprite onTouchesEnded.. ");
}
});
cc.eventManager.addListener(listener1, btn);
4、JS调用OC方法(oc方法必须为静态)
第一个参数为:OC类名
第二个参数为OC静态方法名
第三个参数及以后,均为调用的该OC方法的参数
ret为oc方法的返回值
var ret = jsb.reflection.callStaticMethod("NativeOc", "ShowMessage:", "cocos2d-js");
5、OC调用JS方法(js方法为全局方法)
引入头文件 #import"cocosbuilder/js_bindings_ccbreader.h"
直接调用方法名,写成字符串,参数直接赋值或写成字符串拼接
ScriptingCore::getInstance()->evalString("cpp_callback(3,5)", &ret);
6、页面切换
var scene = new cc.Scene();
var layer = new MyTestLayer();
scene.addChild(layer);
cc.director.runScene(scene);