guia container flex actionscript-3

container - flexbox html



Flex: cuando se ocultan componentes en flex (3)

Cuando configuro un componente como visible = falso, el componente se oculta, pero ¿cómo hago para que no ocupe espacio (para cambiar el tamaño del contenedor al que pertenece?)

<mx:HBox width="100%" height="100%"> ... </mx:HBox> <mx:HBox width="100%" id="boxAddComment" visible="false" > <mx:TextArea id="txtComment"/> <mx:Button label="Spara" click="addComment();"/> </mx:HBox>

Cuando boxAddComment es visible = falso, quiero que el primer HBox tome 100% de alto.


Usar includeInLayout ="true" o "false" alternará el espacio que ocupa en el flujo de elementos que se representan en esa sección.

Nota importante: si no especificas visible="false" cuando includeInLayout = "false" , normalmente obtendrás algo que no es deseado y es que tu artículo ( boxAddComment ) aún está visible en la página, pero debajo de id="boxAddComment" se superpondrá visualmente. Por lo tanto, en general, es probable que desee que " includeInLayout " y " visible " estén sincronizados.


use la propiedad includeInLayout . p.ej

<mx:HBox width="100%" height="100%"> ... </mx:HBox> <mx:HBox width="100%" id="boxAddComment" visible="false" includeInLayout="false" > <mx:TextArea id="txtComment"/> <mx:Button label="Spara" click="addComment();"/> </mx:HBox>


La sugerencia de Ross Henderson de vincular includeInLayout con boxAddComment.visible funciona muy bien con Flex 3.0 pero descubrí que no funciona en Flex 3.6 (vi una publicación que realmente deja de funcionar desde Flex 3.3).

Solo para tu información.