cocos2dx-lua 加载和绑定ccbi 中对象
2014-10-21 16:46
330 查看
cocosbuilder 中的设置
在cocosbuilder中 找到需要绑定的CCMenuItemImage
![](https://img-blog.csdn.net/20141021164618986?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvejM1ODYwMjk1NQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
把code connections 中 设置 为 owner var 并填写自定义对象名
设置一个 CCMenuItemImage 叫 close
![](https://img-blog.csdn.net/20141021164636084?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvejM1ODYwMjk1NQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
CCLabelTTF
CCScale9Sprite
等其他对象类似 选 owner var 并设置 自定义对象名
也可以通过设置tag 可以在lua中通过tag 读取对象
![](https://img-blog.csdn.net/20141021164652027?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvejM1ODYwMjk1NQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
在lua中加载ccbi 并加载指定ccbi中指定的对象进行操作
lua中的代码
加载ccbi方式:
proxy= LuaProxy:create() --使用luaproxy 库 新建一个proxy对象
local n = proxy:readCCBFromFile("xxx.ccbi") -- 加载你设置的ccbi文件
local l = tolua.cast(n, "CCLayer") -- 把ccbi 转换对cclayer对象
加载此ccbi中各种对象的 方式:
加载各种对象中xxx 指的时 ccbi中其对象的code connections 中 设置 为 owner var 并在后填写的相应对象名称
上图中 CCMenuItemImage 叫 close 则加载代码为
--把ccbi中的菜单项转换成lua中的菜单项对象
local menuItem= proxy:getNode"close","CCMenuItem"
--把转换好的菜单项绑定回调事件
proxy:handleMenuEvent(menuItem,function()
print("点击了关闭菜单")
end)
--其他常用的对象的加载方式 xxx为ccbi中自定义的对象名
--把ccbi中定义的CCLabelTTF转换成 lua中CCLabelTTF 对象
local ttf=tolua.cast(proxy:getNode"xxx","CCLabelTTF")
--把ccbi中的精灵对象转化成lua的精灵对象
local sprite = tolua.cast(proxy:getNode"xxx","CCSprite")
--把ccbi中的菜单对象转换成lua中的菜单对象
local menu= tolua.cast(proxy:getNode"xxx","CCMenu")
--把ccbi中的菜单项转换成lua中的菜单项对象
local menuItem= proxy:getNode"xxx","CCMenuItem"
--把转换好的菜单项绑定回调事件
proxy:handleMenuEvent(menuItem,function()
end)
--把ccbi中的九宫格 转换成 lua中的九宫格对象
local ccsprite9 = proxy:getNode"xxx","CCScale9Sprite"
--把ccbi中的按钮转换成lua中的按钮对象
local ccontrol = tolua.cast(proxy:getNode"xxx","CCControlButton")
--给转换好的按钮绑定事件
proxy:handleButtonEvent(ccontrol, function(ccontrol, event)
-- 按钮的 事件
end, CCControlEventTouchUpInside)
在cocosbuilder中 找到需要绑定的CCMenuItemImage
把code connections 中 设置 为 owner var 并填写自定义对象名
设置一个 CCMenuItemImage 叫 close
CCLabelTTF
CCScale9Sprite
等其他对象类似 选 owner var 并设置 自定义对象名
也可以通过设置tag 可以在lua中通过tag 读取对象
在lua中加载ccbi 并加载指定ccbi中指定的对象进行操作
lua中的代码
加载ccbi方式:
proxy= LuaProxy:create() --使用luaproxy 库 新建一个proxy对象
local n = proxy:readCCBFromFile("xxx.ccbi") -- 加载你设置的ccbi文件
local l = tolua.cast(n, "CCLayer") -- 把ccbi 转换对cclayer对象
加载此ccbi中各种对象的 方式:
加载各种对象中xxx 指的时 ccbi中其对象的code connections 中 设置 为 owner var 并在后填写的相应对象名称
上图中 CCMenuItemImage 叫 close 则加载代码为
--把ccbi中的菜单项转换成lua中的菜单项对象
local menuItem= proxy:getNode"close","CCMenuItem"
--把转换好的菜单项绑定回调事件
proxy:handleMenuEvent(menuItem,function()
print("点击了关闭菜单")
end)
--其他常用的对象的加载方式 xxx为ccbi中自定义的对象名
--把ccbi中定义的CCLabelTTF转换成 lua中CCLabelTTF 对象
local ttf=tolua.cast(proxy:getNode"xxx","CCLabelTTF")
--把ccbi中的精灵对象转化成lua的精灵对象
local sprite = tolua.cast(proxy:getNode"xxx","CCSprite")
--把ccbi中的菜单对象转换成lua中的菜单对象
local menu= tolua.cast(proxy:getNode"xxx","CCMenu")
--把ccbi中的菜单项转换成lua中的菜单项对象
local menuItem= proxy:getNode"xxx","CCMenuItem"
--把转换好的菜单项绑定回调事件
proxy:handleMenuEvent(menuItem,function()
end)
--把ccbi中的九宫格 转换成 lua中的九宫格对象
local ccsprite9 = proxy:getNode"xxx","CCScale9Sprite"
--把ccbi中的按钮转换成lua中的按钮对象
local ccontrol = tolua.cast(proxy:getNode"xxx","CCControlButton")
--给转换好的按钮绑定事件
proxy:handleButtonEvent(ccontrol, function(ccontrol, event)
-- 按钮的 事件
end, CCControlEventTouchUpInside)
相关文章推荐
- [zz]为 Lua 绑定 C/C++ 对象
- cocos2d-x lua分支加载ccbi文件
- sublime_text 2.0.2 绑定cocos2dx lua 开发游戏
- 用LuaBridge为Lua绑定C/C++对象
- 【COCOS2DX-LUA 脚本开发之五】Lua 使用OOP(面对对象思想编程),免Binding创建自定义lua类
- cocos2dx的lua绑定 【转】
- cocos2dx3.0下sqlite的C++与lua绑定
- cocos2dx-lua绑定之代码编辑器
- cocos2dx游戏开发学习笔记3-lua面向对象分析
- 【COCOS2DX-LUA 脚本开发之五】Lua 使用OOP(面对对象思想编程),免Binding创建自定义lua类
- cocos2dx lua文件的加载问题
- cocos2dx lua binding ,cocos2dx 绑定lua测试
- 【COCOS2DX-LUA 脚本开发之五】Lua 使用OOP(面对对象思想编程),免Binding创建自定义lua类
- cocos2d-x-LuaProxy学习日志(3) -- 绑定ccbi 常用控件
- cocos2dx中lua实现调用ccbi和动画等c++工具类
- cocos2dx之lua绑定简析
- cocos2dx的lua绑定
- cocos2dx lua文件的加载问题
- cocos2dx 3.0 开荒笔记 ---- 3.0的lua绑定