在ScrollView内容器中使用cc.Label问题

@panda @jare

我直接上代码,在HelloWorld.js 里面有个方法是myDemo

assets.rar (44.9 KB)

不是设置了 ContentSize.height = 26 了吗?不明白你的问题点在哪里。。。

我设置了Label的内容为XXXX,Node的高度竟然没有改变,还是26,显然Label的高度不是26了

看了一下,这是正常表现… label height 只有在下一帧渲染出来之后才会更新,因为高度需要重新计算,在添加节点之后直接获取 height 是获取当前 node 设置。

label在下一帧渲染这点和之前版本表现是不一致的,之前版本label的大小是在当前帧直接刷新的。

在代码中修改文字string值这种使用方式太常见了,因为文字的多少是不可控的,所以需要根据label最终的大小进行其他节点的布局,这种使用场景非常多,让开发者自己调用_updateRenderData(true)这样的内部api,显然不是合适的方式。

类似的表现不一致还有 ToggleGroup.toggleItems 和 ToggleContainer.toggleItems,新接口返回的是所有toggle(包含未激活toggle)。

这些相同的使用方式但表现确不一致的改动,会造成项目升级的一些bug,使项目平滑升级变得比较困难,希望在版本升级时考虑下。

额。。。刚才问了下 pa大 这算是更新之后设计上的一点漏洞吧,这个问题会尽快调整的。:slightly_smiling:

感谢@xduooo对问题的诠释,感谢引擎团队的对产品的重视,谢谢