参考:
一 RichText点击事件用途
1. 可以用于当游戏中技能描述里有buff,点击buff会弹出buff的详情框。
2. 用于点击聊天消息里的高亮装备文字,会弹出装备详情。
例如点击下图中的[蚀魔]
会弹出该buff的详情
二 使用方法
在richtext的string属性中输入如下,其中click表示回调函数,param表示传入参数。
20%概率造成<color=#ff0000 click='handler' param='1001'>[燃烧]</c>效果
新建一个类RichText.ts ,写好handler回调函数
export default class RichText extends cc.Component { handler(e: cc.Event.EventTouch, data) { console.log(e, data); } }
将RichText.ts绑定到richText组件上
运行项目,点击燃烧
浏览器输出点击事件EventTouch和param参数
如果不需要设置颜色color, 也可以使用on来监听。
<on click='handler'>[燃烧]</on>
三 源码部分
在源码core/components/CCRichText.js中可以看到,"click"回调是在点击touchEnd事件中判断触摸点是否在文本label的矩形范围内,如果在则调用该文本label的click回调并传递参数。