2.4.3 LabelShadow问题

  • Creator 版本: 2.4.3

  • 目标平台: web

  • 重现概率: 100%

  • 具体问题:LabelShadow不论是在编辑器添加还是动态添加 修改color offset blur都不能看到效果 编辑器需要去显示隐藏一下控件或操作Label组件强制刷新视图才能看到修改的效果 动态加载的也需要同样的操作才能看到效果
1赞

从源码来看 Labeloutline(没问题 正常更新)更新的时候是调用的setVertsDirty 而LableShadow调用的则是markForRender 是新版本专门这样设计的么

坑了一个小时后,看到你了。

labelShadow.color = cc.Color.YELLOW; 官网是这样写到,无效
labelShadow.node.color = cc.Color.YELLOW; 这样可以

labelShadow.offset = new cc.Vec2(2, 2); 无效
labelShadow.node.offset = new cc.Vec2(2, 2); 无效

cc.LabelShadow.prototype[’_updateRenderData’] = function () {
let label = this.node.getComponent(cc.Label);
if (label) {
label.setVertsDirty();
}
}
先可以这样解决

文档写了 在char模式下 是无效的哈

2.3.2的编辑器也是会有相关的问题; 更改shadow的offset之后,一直看不到改变。必须要重新设置下cache mode之后 才能看到效果

不是char 就是默认的none 问题表现在
1.编辑器不能立即看到效果 还需要多操作一步
2.动态添加组件的话也不能立即看到效果 也需要多设置一步
所以如果对上面2项无所谓的话其实不影响使用

我想问下 在2.4 版本上模拟器能用么