求助,cocosStudio里的按钮事件如何添加

求助,cocosStudio里的按钮事件如何添加,第1张

用addTouchEventListener

我写的代码形式如下

local func=function(sender)

xxxxxxxxx

end

local btn=layer:getChildByName("Button")

btn:addClickEventListener(func)

需要将libGUI项目(位于解决方案目录\cocos2d\cocos\ui\下,根据目标平台选择)引入解决方案中,设为主项目的生成依赖项,并在主项目的属性——链接器——附加依赖项中加入“libGUI.lib”(如果解决方案中已有就无视这句话,如果IDE不是VS也无视这句话)

然后#include "ui/CocosGUI.h"

在使用时,首先创建一个事件监听器,事件监听器包含以下几种:

触摸事件 (cc.EventListenerTouch)

键盘响应事件 (cc.EventListenerKeyboard)

加速记录事件 (cc.EventListenerAcceleration)

鼠标响应事件 (cc.EventListenerMouse)

自定义事件 (cc.EventListenerCustom)

以上事件监听器统一由 cc.eventManager 来进行管理, 它是一个单例对象。它的工作需要三部分组成:

事件管理器 cc.eventManager

事件类型 cc.EventTouch, cc.EventKeyboard 等

事件监听器 cc.EventListenerTouch, cc.EventListenerKeyboard 等

监听器实现了各种触发后的逻辑,在适当时候由 事件管理器分发事件类型,然后调用相应类型的监听器。

使用方法

现在将要实现在一个界面中添加三个按钮,三个按钮将会互相遮挡,并且能够触发触摸事件,以下是具体实现

首先创建三个精灵,作为三个按钮的显示图片

var sprite1 = cc.Sprite.create("Images/CyanSquare.png")

sprite1.x = size.width/2 - 80

sprite1.y = size.height/2 + 80

this.addChild(sprite1, 10)

var sprite2 = cc.Sprite.create("Images/MagentaSquare.png")

sprite2.x = size.width/2

sprite2.y = size.height/2

this.addChild(sprite2, 20)

var sprite3 = cc.Sprite.create("Images/YellowSquare.png")

sprite3.x = 0

sprite3.y = 0

sprite2.addChild(sprite3, 1)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11367908.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存