cocos2dx+lua注册事件函数详解
来源:互联网 发布:剑三花太捏脸数据 编辑:程序博客网 时间:2024/06/05 04:43
lua注释:
1. 单行注释 -- 功能等同于C++中的//
2. 多行注释 --[[ 注释的内容 ]] 功能等同于C++中的 /**/
3. 多行注释 --[====[ 注释和内容 ]====], 也等同于C++中的/**/, 这个主要用于注释的内容里面有像arr[arr2[idx]] 这种文本, 如果使用--[[ ]] 遇到arr[arr2[idx]]后面的]]注释就结束,这显示与我们的意图不相符合. 所以使用--[===[ ]===] 来注释内容, 就不用担心了, 两边的等号数量要相同, 多少个没有关系
coocs2dx 版本 3.1.1
registerScriptTouchHandler 注册触屏事件
registerScriptTapHandler 注册点击事件
registerScriptHandler 注册基本事件 包括 触屏 层的进入 退出 事件
registerScriptKeypadHandler 注册键盘事件
registerScriptAccelerateHandler 注册加速事件
registerScriptTouchHandler 详解(可以设置单点或多点)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function gameWindow:addLayerTouchEventMethod1()
local function onTouchEvent(eventType, x, y)
--log(
"eventType = "
..tostring(eventType))
if
eventType ==
"began"
then
--需要返回
true
return
onTouchBegan(touch, event)
elseif eventType ==
"moved"
then
onTouchMoved(touch, event)
elseif eventType ==
"ended"
then
onTouchEnded(touch, event)
end
end
config.bottomLayer:setTouchEnabled(
true
)
config.bottomLayer:registerScriptTouchHandler(onTouchEvent)
end
registerScriptTapHandler 注册点击事件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function gameWindow:addBtn()
local btn = cc.MenuItemImage:create(
"white.png"
,
"black.png"
,
"black.png"
)
btn:setPosition(
320
,
160
)
local function btnClick()
log(
"btnClick"
)
end
btn:registerScriptTapHandler(btnClick)
local menu = cc.Menu:create()
config.bottomLayer:addChild(menu)
menu:setPosition(cc.p(
0
,
0
))
menu:addChild(btn)
end
registerScriptHandler 注册基本事件
注册触屏事件用法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function gameWindow:addLayerTouchEventMethod2()
--创建一个单点触屏事件
local listener = cc.EventListenerTouchOneByOne:create()
--注册触屏开始事件
listener:registerScriptHandler(onTouchBegan, cc.Handler.EVENT_TOUCH_BEGAN)
--注册触屏移动事件
listener:registerScriptHandler(onTouchMoved, cc.Handler.EVENT_TOUCH_MOVED)
--注册触屏结束事件
listener:registerScriptHandler(onTouchEnded, cc.Handler.EVENT_TOUCH_ENDED)
--获取层的事件派发器
local eventDispatcher = config.bottomLayer:getEventDispatcher()
--事件派发器 注册一个node事件
eventDispatcher:addEventListenerWithSceneGraphPriority(listener, config.bottomLayer)
end
注册layer的 进入 退出事件用法
1
2
3
4
5
6
7
8
9
10
function gameWindow:addLayerEnterAndExitEvent()
local function onNodeEvent(eventType)
if
eventType ==
"enter"
then
log(
"enter"
)
elseif eventType ==
"exit"
then
log(
"exit"
)
end
end
config.bottomLayer:registerScriptHandler(onNodeEvent)
end
registerScriptHandler 注册键盘事件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
function cocoEvent.addKeyboardEvent()
local function keyboardPressed(keyCode, event)
if
keyCode ==
23
then
log(
"left"
)
elseif keyCode ==
24
then
log(
"right"
)
elseif keyCode ==
25
then
log(
"up"
)
elseif keyCode ==
26
then
log(
"down"
)
end
--log(
"keyCode = "
..tostring(keyCode))
--log(
"event = "
..tostring(event))
end
local function keyboardReleased(keyCode, event)
--log(
"keyCode = "
..tostring(keyCode))
--log(
"event = "
..tostring(event))
end
local listener = cc.EventListenerKeyboard:create()
listener:registerScriptHandler(keyboardPressed, cc.Handler.EVENT_KEYBOARD_PRESSED)
listener:registerScriptHandler(keyboardReleased, cc.Handler.EVENT_KEYBOARD_RELEASED)
local eventDispatcher = config.bottomLayer:getEventDispatcher()
eventDispatcher:addEventListenerWithSceneGraphPriority(listener, config.bottomLayer)
end
0 0
- cocos2dx+lua注册事件函数详解 事件
- cocos2dx+lua注册事件函数详解
- cocos2dx+lua注册事件函数详解
- cocos2dx+lua注册事件函数详解
- cocos2dx+lua注册事件函数详解
- cocos2dx中lua注册事件函数详解
- cocos2dx+lua注册事件函数详解
- cocos2dx+lua注册事件函数详解
- cocos2dx+lua注册事件函数详解
- cocos2dx+lua 3.1.1 注册事件函数详解
- Lua_Cocos2dx 3.x版本中Lua注册事件函数
- 4------关于在Cocos2dx中注册触摸事件——Lua(单点触摸)
- 【Cocos2dx 3.3 Lua】定时器事件
- Cocos2dx-lua触摸事件处理
- cocos2dx lua 触摸事件+计时器
- cocos2DX-lua 点击事件封装
- cocos2dx中注册导出c++函数供lua调用(使用tolua++)
- [cocos2dx] lua注册回调到c++
- 一个求迷宫入口到出口最近距离的程序 JAVA版本
- ios多线程操作(四)—— GCD核心概念
- Light OJ 1420 - Subsequences forming Strings (DP)
- 远程推送详解
- AIDL
- cocos2dx+lua注册事件函数详解
- ios多线程操作(五)—— GCD串行队列与并发队列
- 百度地图之初步使用实践
- Code Forces 644A Parliament of Berland
- Linux的lshw命令
- ios多线程操作(六)—— GCD全局队列与主队列
- Hibernate环境配置
- Android日历控件,还未实现点击日期改变背景色但可获取日期
- Code Forces 645A Amity Assessment