setPosition不生效的bug【3.8.x】

  • Creator 版本:3.8.6 & 3.8.1,其余版本未验证

  • 目标平台: 网页预览

  • 重现方式:
    节点结构如下:main和test分别有widget组件
    btn_enum_zuanshi1
    代码如下:test调用updateAlignment之后,main节点的位置会重置。。。。。。
    screenshot_2025-03-04_17-35-32

demo:setPos.zip (26.8 KB)

因为子节点调用updateAlignment()会让父节点也调用updateAlignment(),也许你可以先把main节点的weight组件给禁了? :thinking:

没有用,main节点禁用了也是一样的
screenshot_2025-03-05_09-10-00

我试了一下,因为updateAlignement()是引擎内部调用的接口,所以它不受enabled的影响,但是把main节点的widget组件销毁了就不会跑回去了。

也可以修改源代码让它widget.enabled = false的时候不要对齐了

如果不想修改源代码的话,还有一种办法可以实现就是Align Mode选择ONCE,然后不要在编辑器里运行,在浏览器里运行

我已经用别的方法绕过去了,只是提出来,希望引擎组改掉这个bug