手机web上的按钮很大几率点击后弹不起来

只有亲亲小碰一下就能弹起来 如果是正常的整个手点下去容易灰掉就弹不起来了,然后你得点第二次才会触发事件并弹起,且如果这样做的话后面脚本设置的触摸事件就不会再起作用了

我遇到过类似的情况,是因为我的button的变化效果是sprite,但是我没有指定hover的spriteFrame,在电脑网页上只要按下去鼠标没有移开,就一直不恢复到normal状态,不知道你的是什么情况

我的按钮就是直接系统的按钮 用来测试用的 什么都没改 只加了点击事件用来测试而已 而且你的是电脑 我的是手机web出问题 都不知道什么原因

可不可以把你项目文件发给我看看

project.json? 这个看不出来什么吧

整个项目打包zip

我的也會,我還以為是我手機的關係,
在android上的確是常常會彈不起來

ios也是 你咋解决的呢

都到1.5.1了还是这样呢… transition用的scale,按钮点击后按钮缩小并隐藏自己(enabled = false ), 然后下次true的时候,按钮就还是缩小的,有时候能弹回来,有时候就一直是缩小的状态一直到下次触摸

好吧,终于找到办法解决了,是看了CCButton源码后,想到的解决方案。
就是通过给这些按钮再加一个组件,代码如下,就能让按钮在从隐藏状态切到显示状态的时候,不会出现错误了。不过用到了CCButton的私有变量_transitionFinished,始终不太好,最后还是希望由引擎官方的大大来修改源码的方式比较合适。

cc.Class({
    extends: cc.Component,

    properties: {
    },

    onLoad: function () {
        this._scaleDefault = this.node.scale ;
    },
    
    onEnable : function(){
        this.node.scale = this._scaleDefault ;
    },

    onDisable : function(){
        this.node.scale = this._scaleDefault ;
        this.node.getComponent(cc.Button)._transitionFinished = true ;
    },

});