Creator 版本号:1.4.1
运行时目标平台:web
Label设置overflow时如果没有先被addChild,显示上会有问题。测试代码如下
addLabelPreAddChild: function () {
let labelNode = new cc.Node()
labelNode.position = cc.p(300, 0)
let label = labelNode.addComponent(cc.Label)
label.string = "测试文字得长点"
//这个先添加节点再设置overflow
this.node.addChild(labelNode)
// label.overflow = cc.Label.Overflow.RESIZE_HEIGHT
label.overflow = cc.Label.Overflow.SHRINK
// label.overflow = cc.Label.Overflow.CLAMP
labelNode.width = 100
},
addLabelDelayAddChild: function () {
let labelNode = new cc.Node()
labelNode.position = cc.p(-300, 0)
let label = labelNode.addComponent(cc.Label)
label.string = "测试文字得长点"
//这个先设置overflow再添加节点
// label.overflow = cc.Label.Overflow.RESIZE_HEIGHT
label.overflow = cc.Label.Overflow.SHRINK
// label.overflow = cc.Label.Overflow.CLAMP
labelNode.width = 100
this.node.addChild(labelNode)
},
运行效果如图:
测试CLAMP和SHRINK有明显问题,RESIZE_HEIGHT没问题
测试项目:LabelTest.zip (2.9 KB)
