leitura do artigo >

10
fev

AS3 + XML : nível basico

O XML é uma linguagem que não possui tags predefinidas e com ele podemos criar documentos que tenham dados organizados de forma hierárquica. Neste post vou ensinar como criar um exemplo básico de AS3+XML e mostrar como capturar o valor de um atributo e o conteúdo de um nó.

Comentários (3) Comentários(3) Categorias Action Script3, XML

O XML é uma linguagem que não possui tags predefinidas e com ele podemos criar documentos que tenham dados organizados de forma hierárquica. Neste post vou ensinar como criar um exemplo básico de AS3+XML e mostrar como capturar o valor de um atributo e o conteúdo de um nó.

Para criar o exemplo, serão necessários os seguintes itens e que deverão estar numa mesma pasta:
• um documento de imagem JPG chamado imagem.jpg;
• um documento XML em branco chamado arquivo.xml e que tenha sido salvo com codificação UTF-8;
• um documento FLA (pode ter qualquer nome) com um campo de texto dinâmico de nome de instancia campodetexto. Esse campo de texto deve ter uma fonte incorporada (embed), de preferência com os caracteres: Maiúsculas, Minúsculas, Numerais, Pontuação, Latin I.

Abra o arquivo.xml e coloque:

1
2
3
4
5
<?xml version="1.0" encoding="UTF-8"?> 
<xml>
    <item img="imagem.jpg">Texto texto texto... </item>
    <item>#$ãó123</item>
</xml>

No frame da timeline onde está o campo de texto dinâmico, coloque:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var xml:XML 
 
var urlloader:URLLoader = new URLLoader()
urlloader.load(new URLRequest("arquivo.xml"))
urlloader.addEventListener(Event.COMPLETE, urlloaderComplete)
function urlloaderComplete(e:Event){
    xml = XML(e.currentTarget.data)
    loader.load(new URLRequest(xml.child(0).@img))
    campodetexto.text = xml.child(0).toString() + xml.child(1).toString() 
}
 
var loader:Loader = new Loader()
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loaderComplete)
function loaderComplete(e:Event){
    addChildAt(loader,0)
}

Ao publicar o FLA, a imagem carregada é a mesma indicada no atributo img do primeiro nó do XML (lembrando que a numeração dos nós começa a partir do zero), o qual indicamos com xml.child(0).@img. O que aparece no campo de texto é o conteúdo do primeiro nó somado com o segundo, o qual indicamos com campodetexto.text = xml.child(0).toString() + xml.child(1).toString().

Pronto! Esse é um exemplo bem simples de como carregar imagens e/ou texto através de um arquivo XML.

Cada vez que você abrir o SWF, ele vai ler o XML. Isso quer dizer que se você fizer alguma alteração na imagem ou no texto do primeiro ou segundo nó do XML, as mudanças serão reconhecidas sem a necesidade de republicar o SWF.

O ideal é programar o ActionScript com um código que reconheça o número de nós existentes e assim poder ir variando o conteúdo de forma mais dinâmica. Provavelmente, logo mais criarei um exemplo disso em um post de um nível mais avançado sobre XML.

Para mais detalhes sobre a classe XML do AS3, clique aqui.

Postado em 10-02-2011 por
em Action Script3, XML

Share

Comentários

  • Eder Lima disse:
    em 11 de fevereiro de 2011

    Boa Igor.

    Ensinar do básico ao avançado sempre dá uma ajudinha pra galera que tá começando, muito bom.
    Não deixa de continuar a série e ensinar a fazer buscas, usar as classes XML e XMLDocument.
    Keep going! :)

  • Igor Amendola disse:
    em 11 de fevereiro de 2011

    Valeuu, Eder.
    Espero ter tempo pra poder continuar a serie o mais breve possivel!
    :D

  • Bruno M. disse:
    em 11 de fevereiro de 2011

    véri gude!

 Escreva um Comentário

Seu nome

E-mail (não será publicado) (obrigatório)

Website

Comente

Spam protection by WP Captcha-Free