【Cocos2dx】Cocos2dx学习笔记(二)、点击事件

在Cocos2dx中对精灵,层等Node有监听机制, 通过监听机制, 可以对用户的触摸事件进行响应, 下面介绍Cocos2dx的单击事件

单击类 : EventListenerTouchOneByOne

EventListenerTouchOneByOne 为Cocos2dx中单击响应的监听类, 其中拥有如下函数

 

local create() // 构造函数
local isSwallowTouches() // 返回是否为吞噬监听 
// 吞噬监听 上层对象处理触摸事件并屏蔽下层对象的监听
local checkAvailable() // 返回监听是否可用
setSwallowTouches(local needSwallow) // 是否为吞噬触摸 needSwallow 为true的时候为吞噬

创建监听事件的过程:

 

 

// 1. 创建本地的单击监听对象 EventListenerTouchOneByOne , 调用Create 
local listener = cc.EventListenerTouchOneByOne:create() 
// 2. 设置为吞噬监听 
listener:setSwallowTouches(true)
// 3. 绑定监听事件 通过registerScriptHandler函数
listener:registerScriptHandler(function (touch,event)
	// do something
	// 4. 返回true 之后可以执行EVENT_TOUCH_MOVED(触摸并移动)监听函数
	return true
	// 5. registerScriptHandler函数的第二个参数,
	// EVENT_TOUCH_BEGAN 表示手接触屏幕	
end,cc.Handler.EVENT_TOUCH_BEGAN)
listener:registerScriptHandler(function(touch, event)
	// do something
return true
	// EVENT_TOUCH_MOVED 表示触摸之后移动
end, cc.Handler.EVENT_TOUCH_MOVED)
listener:registerScriptHandler(function(touch,event)
// do something
return true
	// EVENT_TOUCH_ENDED 表示手离开屏幕的时候
end,cc.Handler.EVENT_TOUCH_ENDED)
// 6. 创建本地管理监事件的对象
local eventDispatcher = self:getEventDispatcher()
// 7. 将新建的对象加入到本地监听事件中去
eventDispatcher:addEventListenerWithSceneGraphPriority(listener,self);
// 监听完成

 

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值