logo
  • Home
  • Acerca
  • Autores
  • Faq
  • Rede
  Twitter   Feed-me! RSS!

#Dica1 FLEX – loop? que tal Repeater?

Colocado por Janderson Cardoso na(s) categoria(s): Action Script 3.0, Adobe Flex, Dicas, Flex, for, loop, repeater em 09 1st, 2009 | Sem comentários

Olá, no atual projeto em que estou trabalhando há necessidade de construir componentes em flex em tempo de execução, mas como fazer isso? para muitos isso é um mito para outros já imaginaram um loop em Action script que faça isso, como o exemplo abaixo:

PLAIN TEXT
CODE:

  1. <?xml version=“1.0″ encoding=“utf-8″?>
  2. <mx:Application xmlns:mx=“http://www.adobe.com/2006/mxml” layout=“absolute”
  3.     creationComplete=“{init()}”>
  4.    
  5.     <mx:Script>
  6.         <![CDATA[
  7.             import mx.controls.Label;
  8.             import mx.collections.ArrayCollection;
  9.            
  10.             [Bindable]
  11.             private var array:ArrayCollection = new ArrayCollection(
  12.             [{nome:“teste”},{nome:“de”},{nome:“janderson”},{nome:“saberprogramar.com”},{nome:“gostou?”}]);      
  13.            
  14.             private function init():void{
  15.                
  16.                 for (var i:int=0; i <array.length;i++){
  17.                     var label:Label = new Label();
  18.                     label.text = array.getItemAt(i).nome;
  19.                     box.addChild(label);
  20.                 }            
  21.                
  22.             }
  23.            
  24.         ]]>
  25.     </mx:Script>
  26.    
  27.     <mx:VBox id=“box”>   
  28.     </mx:VBox>
  29.    
  30. </mx:Application>

parabéns para aqueles que imaginaram o código acima, vai funcionar e vai ser criado os labels um abaixo do outro pois se encontra em um vBox ;)

Mas se eu disser que não é necessário, que existe uma forma mais simples que vc não vai precisar desta function que faz esse Loop? sim é verdade, poucos sabem mas o flex tem um recurso muito legal que simplifica ao máximo a vida do programador na hora de criar componentes em tempo de execução, estou falando do REPEATER.

esse exemplo que acabei de mostrar acima com repeater ficaria assim:

PLAIN TEXT
CODE:

  1. <?xml version=“1.0″ encoding=“utf-8″?>
  2. <mx:Application xmlns:mx=“http://www.adobe.com/2006/mxml” layout=“absolute”>
  3.    
  4.     <mx:Script>
  5.         <![CDATA[
  6.             import mx.controls.Label;
  7.             import mx.collections.ArrayCollection;
  8.            
  9.             [Bindable]
  10.             private var array:ArrayCollection = new ArrayCollection(
  11.             [{nome:“teste”},{nome:“de”},{nome:“janderson”},{nome:“saberprogramar.com”},{nome:“gostou?”}]);      
  12.  
  13.            
  14.         ]]>
  15.     </mx:Script>
  16.    
  17.     <mx:VBox id=“box”>
  18.         <mx:Repeater id=“myRepeater” dataProvider=“{array}”>
  19.             <mx:Label text=“{myRepeater.currentItem.nome}”/>
  20.         </mx:Repeater>
  21.     </mx:VBox>
  22.    
  23. </mx:Application>

Bem mais simples não? é claro que não serve só para o caso citado acima, dê uma olhada na documentação aqui.

Bem é isso,  post simples para mostrar algo simples que pode simplificar muita coisa :)

Cumps.



Veja o post original no blog do autor aqui!  

Janderson Cardoso

Escrito por Janderson Cardoso @ http://www.jandersonfc.com/
Saiba mais sobre o autor na sua pagina de perfil
Outros posts do autor:
» Tutorial Básico Swiz Framework 1.0
» Sou Papai, Murilo chegou!
» #CafxFramework – Menos código, Mais café!

Deixe um comentário



Spam Protection by WP-SpamFree

ACERCA

O que é o RedeRIA ?

O redeRIA não é nada mais que um agregador de feed's que disponibiliza o conteudo de varios blogs e autores ao redor do mundo RIA, actualmente agregamos mais de 2790 entradas vindas de 53 blogs especializados em ria’s, pelo que só fica a ganhar em assinar o feed ou seguir a comunidade no twitter.

Se acha que o seu blog ou um blog de um amigo é interessante e util para os leitores o redeRIA, faça a sua submissão aqui.

Feed: assine já
Twitter: siga-nos

GOOGLE

Votação


Deveria o RedeRia agregar conteúdo em inglês?
Ver Resultados

AUTORES


Eduardo KrausAlexandre TadashiBindableCognitiva SoluçõesDaniel LopesDaniel SchmitzDanielPedrinhaDClick TeamEbercomEdgard DavidsonElvis FernandesErko BrideeFabiel PrestesFábio Batista da SilvaFabio da SilvaFabriccio BernardesFelipe BorellaFlavia MoreiraGabriel VersalliniGabriela T. PerryIgor MusardoJanderson CardosoJoão AugustoJose Carlos FielKelps SousaLeonardo FrançaLucas MarçalLuis MessiasLuiz TarabalMario JuniorMário SantosMauro MartinsPablo SouzaPedro ClaudioreneRia BrazilriaPTRicardo CerqueiraRobson FernandesRodrigo Pereira FragaSaintBrSamuelFacchinelloSergio SouzaSilva DeveloperStefan HorochovecTech CaffeTecinforThiago BuenoVedVinícius SandimWillian ManoXAML Cast

PUBLICIDADE








Powered by Wordpress & msdevstudio.com