Ayami 0 Denunciar post Postado Abril 16, 2009 XML <?xml version="1.0" encoding="utf-8"?> <exibicao> <filme>QUEM QUER SER UM MILIONÁRIO?</filme> <filme>GRAND TORINO</filme> <filme>WOLVERINE</filme> </exibicao> Quero colocar os dados do XML dos 3 filmes em 3 dynamic texts diferentes a "filmes1" "filmes2" e "filmes3" Essa é a Action: var xmlLoader:URLLoader = new URLLoader(); var xmlData:XML = new XML(); xmlLoader.addEventListener(Event.COMPLETE, LoadXML); xmlLoader.load(new URLRequest("EXIBICAO.xml")); function LoadXML(e:Event):void { xmlData=new XML(e.target.data); FilmesExibicao(xmlData); } function FilmesExibicao(Exibicao:XML):void { var filmes1:XMLList=Exibicao.filmes[0]; } filme1.text =Exibicao.filmes[0] filme2.text =Exibicao.filmes[1] filme3.text =Exibicao.filmes[2] Eu sei que esta errada mas não sei como fazer..... Alguem pode ajudar? http://forum.imasters.com.br/public/style_emoticons/default/upset.gif Obrigada! Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Abril 16, 2009 Bom :) Segue um exemplo abaixo como deve ser feito: //cria o objeto com o endereço(URL) a ser carregado var endereco:URLRequest = new URLRequest("exibicao.xml") //cria o objeto que carregará var loader:URLLoader = new URLLoader(); //crio a Array que vai conter os filmes var filme:Array = new Array(); //Função de carregamento completo function onComplete(event:Event) { var filmes = new XML(event.target.data); var total = filmes.exibicao.length(); for(var i:Number = 0; i < total; i++;){ filme[i] = filmes.exibicao.filme[i]; } } //adiciona a função ao Listener loader.addEventListener(Event.COMPLETE, onComplete); //carrega o arquivo xml loader.load(endereco); //carrego os textos nos clips filme1.text = filme[0] filme2.text = filme[1] filme3.text = filme[2] ;) Compartilhar este post Link para o post Compartilhar em outros sites
Ayami 0 Denunciar post Postado Abril 16, 2009 Então, primeiramente obrigada pela ajuda, eu utilizei seu exemplo e cheguei no seguinte código, dei até um trace pra ver se estavam retornando as informações corretas e estão, no output aparecem os nomes dos filmes, MAS esta vindo também a seguinte mensagem "TypeError: Error #2007: O parâmetro text não deve ser nulo. at flash.text::TextField/set text() at flash_fla::MainTimeline/frame41()" e não carrega nada nos dynamic text. //cria o objeto com o endereço(URL) a ser carregado var endereco:URLRequest = new URLRequest("exibicao.xml") //cria o objeto que carregará var loader:URLLoader = new URLLoader(); //crio a Array que vai conter os filmes var filme:Array = new Array(); //Função de carregamento completo function onComplete(event:Event) { var exibicao = new XML(event.target.data); var total = exibicao.filme.length(); for(var i:Number = 0; i < total; i++){ filme[i] = exibicao.filme[i]; trace (filme[i]); } } //adiciona a função ao Listener loader.addEventListener(Event.COMPLETE, onComplete); //carrega o arquivo xml loader.load(endereco); //carrego os textos nos clips teste1.text = filme[0] filme2.text = filme[1] filme3.text = filme[2] E agora rsss não descubro o erro... novamente obrigada! Compartilhar este post Link para o post Compartilhar em outros sites
Ayami 0 Denunciar post Postado Abril 16, 2009 Descobri o problema! a ordem estava errada, esta parte: //carrego os textos nos clips teste1.text = filme[0] filme2.text = filme[1] filme3.text = filme[2] tinha que ficar dentro da function onComplete Obrigada =) funcionou /o/ Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Abril 16, 2009 :) http://forum.imasters.com.br/public/style_emoticons/default/clap.gif Muito bem ;) Compartilhar este post Link para o post Compartilhar em outros sites