Is there a way to move dynamical text multiline to the center if there is only 1 line left, because veritcal center cannot be adjusted in the properties panel.
Image 3 Lines text and 1 line text
CodePudding user response:
There's no default option for that, but you can emulate it.
// Let's assume this is your TextField you need to v-align.
var TF:TextField;
// Lets also assume that TextField is still in its original place.
// Record its upper Y-coordinate and height.
var atop:Number = TF.y;
var aheight:Number = TF.height;
// These lines instruct the TextField to adjust its lower
// border so that it exactly fits the text inside.
TF.wordWrap = true;
TF.autoSize = TextFieldAutoSize.LEFT;
// Now, math time.
// The difference between original height and new (autosized) height.
var adiff:Number = aheight - TF.height;
// To vertically position the resized TextField into the center of its original
// place, you need to shift it down by half of the height difference.
// It actually works if new height is larger than original too:
// the "adiff" value will be negative and it still works out.
TF.y = atop adiff / 2;