Flex - posição verticalmente filhos de um HBox horizontal
-
09-09-2019 - |
Pergunta
Eu tenho um HBox personalizado como assim ....
classe pública MyBar estende 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);
}
}
Este exibe um botão no centro do HBox, mas o botão está alinhada ao topo da caixa, eu gostaria que fosse no centro.
Eu estou certo que eu tive esse trabalho antes tão simples quanto definindo o valor y. Mas não parece estar trabalhando agora. Eu estou usando SDK 3.3
Alguém tem alguma pista a respeito de porque eu estou tendo dificuldade com isso?
Obrigado!
Solução
Como definir a y não vai funcionar como o HBox controla as posições y. Se você gostaria que todos os botões para ser colocado no meio do HBox você precisa definir verticalAlign a média
no código que seria
setStyle("verticalAlign", "middle");
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow