Flex — вертикально расположить дочерние элементы горизонтального HBox.
-
09-09-2019 - |
Вопрос
У меня есть собственный HBox....
публичный класс MyBar расширяет HBox {
public function MyBar() {
super();
this.height = 65;
this.percentWidth = 100;
var newButton:Button = new Button();
//.....
newButton.y = 20;
var spacer1:Spacer = new Spacer();
spacer1.percentWidth = 50;
var spacer2:Spacer = new Spacer();
spacer2.percentWidth = 50;
this.addChild(spacer1);
this.addChild(newButton);
this.addChild(spacer2);
}
}
При этом кнопка отображается в центре HBox, но кнопка выровнена по верхней части окна, я бы хотел, чтобы она была в центре.
Я уверен, что раньше у меня это работало так же просто, как установка значения y.Но, похоже, сейчас не работает.Я использую SDK 3.3
У кого-нибудь есть какие-либо подсказки относительно того, почему у меня возникают трудности с этим?
Спасибо!
Решение
Установка y не будет работать, поскольку HBox управляет позициями y.Если вы хотите, чтобы все кнопки располагались в середине HBox, вам нужно установить для вертикального выравнивания значение middle.
в коде это будет
setStyle("verticalAlign", "middle");
Не связан с StackOverflow