求助ProcessBar totalLength属性无法动态精准设置原因

  • Creator 版本:3.7.1

  • 目标平台:目前试了android/web皆无法正常

  • 重现方式:

1、添加progressBar组件,且添加widget适配,居于底部,left/right=32

2、onload时设置progressBar组件的totalLength方法:

let size = view.getResolutionPolicy().canvasSize;

let padding = find(‘ProgressBar’, this.node).getComponent(Widget).left;

totalLength = size - 2*padding

所设置值,在不同设备显示上总是或长或短, 导致进度条与进度值对不上

解决了

修改方法,并将赋值改到加载完成后:

赋值改为: this.progressBarWidth = (find(‘ProgressBar’, this.node) as any).width

打印了process Bar 的 node节点,发现虽然type文件没有声明width,但实际是有返回width的,但是这个值需要等节点加载完成才会变成实际的值,所以需要把赋值放到加载完成后