cocoscreator 防止button连击多次触发事件

cocoscreator 防止button连击多次触发事件,第1张

概述很多时候,ui上面的button都只需要单击触发一次,当用户快速连续点击时就有可能出现非意料的事情,解决这个问题很简单,只要规定button在指定间隔时间内只能触发一次就行。 将下面的代码保存为ButtonSafe.js, 只需要给每个button控件添加下面的脚本并指定间隔时间即可防止重复点击。 /** * Created by skyxu on 2018/9/12. */"use st

很多时候,ui上面的button都只需要单击触发一次,当用户快速连续点击时就有可能出现非意料的事情,解决这个问题很简单,只要规定button在指定间隔时间内只能触发一次就行。

将下面的代码保存为buttonSafe.Js,只需要给每个button控件添加下面的脚本并指定间隔时间即可防止重复点击。

/** * Created by skyxu on 2018/9/12. */"use strict";cc.Class({    extends: cc.Component,propertIEs: {        safeTime: {            default: 0.5,tooltip: "按钮保护时间,指定间隔内只能点击一次."        }    },start(){        let button = this.getComponent(cc.button);        if (!button){            return;        }        this.clickEvents = button.clickEvents;        this.node.on(‘click‘,()=>{            button.clickEvents = [];            this.scheduleOnce((dt)=>{                button.clickEvents = this.clickEvents;            },this.safeTime);            // mark: 这种方式会导致快速点击按钮时触摸穿透(按钮禁用时不再接受触摸事件)            // let autoGrey = button.enableautoGrayEffect;            // button.enableautoGrayEffect = false;            // button.interactable = false;            // this.scheduleOnce((dt)=>{            //     button.enableautoGrayEffect = autoGrey;            //     button.interactable = true;            // },this.safeTime);        },this);    }});
总结

以上是内存溢出为你收集整理的cocoscreator 防止button连击多次触发事件全部内容,希望文章能够帮你解决cocoscreator 防止button连击多次触发事件所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

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

原文地址: http://outofmemory.cn/web/998949.html

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

发表评论

登录后才能评论

评论列表(0条)

保存