• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

biggipsy

leitura de xml a partir de flash

1 mensagem neste tópico

Bom dia

Eu tenho o seguinte codigo

//-----------------------------------------------------------
//função que vai criar a árvore de notícias

var conteudofinal;
conteudofinal = "";

function criararvore() {

var principal = new Array ();
var parent = new XML();
var titulo;
var textopequeno;
var textogrande;
var marca;
var link;
var contador;
var apontador;
var ascendente;
var linknoticia;
var duplicacao
var nbrLines = -1;
var charPos = -1;	
var str;
var totalMcs;
var oldMc;
oldmc = "";
totalMcs = 0;
totalMcs = _root.texto.contentMain.txtduplicate._y;

duplicacao = "0";

principal = this.firstChild.nextSibling.childNodes;

_global.xmltemporario = principal;

conteudofinal = "";

	noticiasExistentes = principal.length;

	while ( noticiaActual < noticiasExistentes ) 
	{		
			apontador = principal[noticiaActual];

			marca = apontador.firstChild.nextSibling;
			titulo = marca.nextSibling.nextSibling;
			textopequeno = titulo.nextSibling.nextSibling;
			textogrande = textopequeno.nextSibling.nextSibling;
			link = textogrande.nextSibling.nextSibling;

			duplicacao = "txtduplicate" + noticiaActual;

			_global.noticiaStr = noticiaStr + "," + duplicacao;

			_root.texto.contentMain.txtduplicate.txtcontainer.autoSize = "left";

			_root.temporario = textogrande;

			duplicateMovieClip(txtduplicate,duplicacao,noticiaActual);

			_root.texto.contentMain[duplicacao].conteudoFinal = "<font color='#185c70'>"+titulo+"</font> "+textopequeno+"<br><br>";		

			nbrLines = -1;
			charPos = -1;

			tamanhotexto = 0;
			tamanhotexto = _root.texto.contentMain[duplicacao].txtcontainer.textHeight;

			_root.texto.contentMain[duplicacao].txtcontainer._height = tamanhotexto;
			_root.texto.contentMain[duplicacao]._height = tamanhotexto;

			//trace(nbrLines);

			if (totalMcs != _root.texto.contentMain.txtduplicate._y ) 
				{				
					totalMcs = _root.texto.contentMain[oldMc]._height + totalMcs;
					oldMc = duplicacao;
				}
			else
				{							
					totalMcs = _root.texto.contentMain.txtduplicate._y + 1;
					oldMc = duplicacao;
				}
			_root.texto.contentMain[duplicacao]._y = totalMcs;						
			noticiaActual = noticiaActual + incrementador;	
	}
	_root.texto.scrolling();
}
//fim da função do xml
//----------------------------------------------------------
   
var myXML:XML = new XML();
myXML.ignoreWhite = true;
myXML.load("noticias.xml");

myXML.onLoad = criararvore;

e ele lê o seguinte xml

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>

<principal>

<parent>

<marca>vazio</marca>

<titulo>Março 2008</titulo>

<textopequeno>Passatempo VEM CANTAR COM O RUCA - 760 78 78 18</textopequeno>

<textogrande>Participe no passatempo e leve as crianças a assistir ao espectáculo "VEM CANTAR COM O RUCA - A FESTA SURPRESA"!<br/>Para participar, só tem de ligar o nº 760 78 78 18 (€0,60+IVA) e habilitar-se a ganhar um convite familiar para o VEM CANTAR COM O RUCA - A FESTA SURPRESA.<br/>Participe e habilite-se a ganhar convites para a festa surpresa do ano!</textogrande>

<link></link>

</parent>

<parent>

<marca>vazio</marca>

<titulo>Março 2008</titulo>

<textopequeno>Revista MAXMEN Março - Passatempo "Al Paciono 88 minutos"</textopequeno>

<textogrande>MaxMen oferece 10 bilhetes duplos para a ante-estreia do filme "Al Pacino 88 Minutos".<br/>Ante-estrei a 19 de Março em Lisboa no Cinema City Campo Pequeno e no Porto Uci Arrábida 29, às 21:30</textogrande>

<link></link>

</parent>

<parent>

<marca>vazio</marca>

<titulo>Fevereiro 2008</titulo>

<textopequeno>Programa "Só Visto!" na RTP 1</textopequeno>

<textogrande>RTP1 realiza passatempo no programa "Só Visto!".<br/>Prémio - 1 Viagem à Irlanda para duas pessoas, 2 noites /3 dias </textogrande>

<link></link>

</parent>

<parent>

<marca>vazio</marca>

<titulo>Fevereiro 2008</titulo>

<textopequeno>Revista Maxmen Fevereiro realiza passatempos</textopequeno>

<textogrande>A revista Maxmen, lançou na sua revista de Fevereiro os seguintes passatempos: <br/>.:760 78 19 19 - de 200 em 200 chamadas 2 Máquinas de Café da Delta BUGATTI <br/>.:760 78 19 40 - primeiros 5 leitores a ligar - Convites duplos p/ assistir à ante-estreia do filme “Jumper” <br/>.:760 78 19 36 - de 200 em 200 chamadas 2 - Máquinas de Imperial da Flama.</textogrande>

<link></link>

</parent>

<parent>

<marca>vazio</marca>

<titulo>Janeiro 2008</titulo>

<textopequeno>RTP de volta com concurso "Sabe mais que uma criança de 10 anos"</textopequeno>

<textogrande>Aos concorrentes, adultos, são feitas perguntas sobre matérias do 1º ao 5º ano de escolaridade.</textogrande>

<link>http://www.4onesolution.pt/imagens/contacto.jpg</link>

</parent>

<parent>

<marca>vazio</marca>

<titulo>Janeiro 2008</titulo>

<textopequeno>Revista Lux elege Personalidades Femininas Lux 2007</textopequeno>

<textogrande>A Revista Lux, durante o mês de Janeiro, elegeu as personalidades Femininas 2007. Para o efeito disponibilizou na sua revista uma listagem de personalidades. Através do número 760 78 19 19, os seus leitores poderam assim fazer a sua eleição.

</textogrande>

<link></link>

</parent>

<parent>

<marca>vazio</marca>

<titulo>A decorrer...</titulo>

<textopequeno>TRIO D´ATAQUE - RTP - 760780280</textopequeno>

<textogrande>Um debate televisivo sobre o mundo do futebol, moderado por Carlos Daniel

Rui Oliveira e Costa (Sporting), António Pedro de Vasconcelos (Benfica) e Rui Moreira (Porto), formam o painel do "Trio d´Ataque", um programa em formato de debate sobre futebol.<br/>Semanalmente, ao longo de uma hora, vão estar em discussão os principais acontecimentos dos jogos.<br/><br/>Um programa interactivo onde o público também pode participar a partir de casa.

</textogrande>

<link></link>

</parent>

<parent>

<marca>vazio</marca>

<titulo>A decorrer...</titulo>

<textopequeno>O Jornal "O Jogo" oferece prémios semanalmente</textopequeno>

<textogrande>O Jornal "O Jogo" e os Clubes de Futebol oferecem semanalmente Produtos oficiais autografado, Bilhetes para Taça UEFA, Camisolas oficiais cachecóis e bonés, Bilhetes para a Liga Portuguesa e Kits Sócio. Para isso basta consultar o Jornal "O Jogo" ou o site www.ojogo.pt</textogrande>

<link></link>

</parent>

<parent>

<marca>vazio</marca>

<titulo>A decorrer...</titulo>

<textopequeno>Concurso "Preço Certo!" - 760780105</textopequeno>

<textogrande>A RTP disponibiliza o nº 760 780 105 para fazer pré-inscrições no concurso "Preço Certo!".</textogrande>

<link></link>

</parent>

<parent>

<marca>vazio</marca>

<titulo>Outubro 2007 / Janeiro 2008</titulo>

<textopequeno>Programa Operação Triunfo 2007 está de volta à RTP1</textopequeno>

<textogrande>O programa Operação Triunfo 2007 está de volta às noites da RTP1 com a melhor audiência média. Site: www.rtp.pt/ot/</textogrande>

<link></link>

</parent>

<parent>

<marca>vazio</marca>

<titulo>Dezembro 2007</titulo>

<textopequeno>RTP com mais acção de Solidariedade</textopequeno>

<textogrande>A RTP  durante os meses de Novembro e Dezembro realizou acções de solidariedas com a AMI - Assistência Médica Internacional e a Associação SOL. A 4 one Solution foi mais uma vez escolhida.</textogrande>

<link></link>

</parent>

</principal>

eu queria o actionscript que estou a trabalhar lê-se o xml mesmo que este tives todo na mesma linha..

do género

<principal>

<parent><marca>vazio</marca><titulo>Março 2008</titulo><textopequeno>Passatempo VEM CANTAR COM O RUCA - 760 78 78 18</textopequeno> <textogrande>Participe no passatempo e leve as crianças a assistir ao espectáculo "VEM CANTAR COM O RUCA - A FESTA SURPRESA"!<br/>Para participar, só tem de ligar o nº 760 78 78 18 (€0,60+IVA) e habilitar-se a ganhar um convite familiar para o VEM CANTAR COM O RUCA - A FESTA SURPRESA.<br/>Participe e habilite-se a ganhar convites para a festa surpresa do ano!</textogrande><link></link></parent></principal>

e ele não le....

penso que esteja relacionado com esta parte do codigo principal = this.firstChild.nextSibling.childNodes;

e marca = apontador.firstChild.nextSibling;

titulo = marca.nextSibling.nextSibling;

textopequeno = titulo.nextSibling.nextSibling;

textogrande = textopequeno.nextSibling.nextSibling;

link = textogrande.nextSibling.nextSibling;

alguém me pode ajudar?

Obrigada

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora