节点绑定了Button组件,某些情况下修改节点scale无效

引擎版本2.2.0
节点绑定了Button组件,onLoad、start内修改节点scale均无效,Button组件会强制改回1

断点发现是ccButton下的__preload方法这存在问题
这里面存在读取node.scale的操作(onLoad什么的还没执行),所以读取到的是1,并设置了个标记,让update去更新node.scale
不是很理解为什么一上来就执行更新状态的操作

__preload () {
    this._applyTarget();
    this._updateState();
 }

@EndEvil

感谢你的反馈,我们在 2.2.0 和 2.2.1 上都进行了测试,没有复现你说的情况,你方便给个demo么,非常感谢

ButtonDemo.zip (805.7 KB)

这个是因为你在 transition 那里选的是 scale,这样在运行的时候按钮的默认不按下尺寸就是固定为编辑器里面设置的尺寸了(即 1),这个模式下面是无法动态更改原尺寸的。

请问,为什么选择scale模式之后,就不能动态修改尺寸了呢?为什么要这么设计呢?
我实际测试,仅仅实在onLoad之后的一小段时间内无法自定义尺寸,之后如何自定义scale都是正常的,这是不是设计上的缺陷。

这个我们在修复的

到今天了还有这个问题,害

哈哈。可能修复问题的人修复到一半,就离职了