Flex Accordion con icono a la derecha
Hola!
Hace poco tuve que skinear un Accordion con la particularidad de que el texto de cada uno de los headers del acordion se debía situar a la izquierda y luego los iconos se deberían colocar totalmente a la derecha.
Como por propiedades css era algo que no se podía hacer, utilizé un itemRenderer que heredaba de un button e hice un override del método updateDisplayList para implementar la lógica de los headers. La solución que propongo pasa por calcular el horizontalGap cada vez que se hace un updateDisplayList, de manera que se ajusta el Gap entre el Label de la izquierda y el icono de la derecha para que queden bien situados en cada momento.
Al calcular el Gap en el método updateDisplayList, el icono se posiciona cada vez que el accordion realiza un repintado (resize, rollOver, rollOut, addChild, etc…)
Adjunto ejemplo y código del componente. Un saludo!
Ver el código fuente
Bajar el ejemplo (Flex 3.0)


