Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Med Key

tags alterando a formatação do texto

Recommended Posts

Olá pessoal, gostaria que alguém me ajudasse.

 

Estou terminando um sistema de notícias em AS3 e estou com problema para ler as tags do meu arquivo xml.

 

Meu XML está assim:

 

<inicio>

<conteudo>
<nome>ajuda</nome>
<noticia><font color="#ff9900"><b>preciso desse help</b>Por favor, ajude quem puder!</font></noticia>
</conteudo>

<conteudo>
<nome>ajuda</nome>
<noticia><font color="#ff9900"><b>preciso desse help</b>Por favor, ajude quem puder!</font></noticia>
</conteudo>

</inicio>

E no flash eu coloquei assim:

 

var xml:XML;
var lista:XMLList;
var loadIMG:Loader = new Loader();

var loadXML:URLLoader = new URLLoader();
loadXML.addEventListener(Event.COMPLETE, Listar);
loadXML.load(new URLRequest("XML.xml"));

function Listar(e:Event):void {
	xml = new XML(e.target.data);
	lista = xml.conteudo;
	noticia_txt.htmlText = lista.noticia;
	noticia_txt.multiline = true;
	noticia_txt.wordWrap= true;
	noticia_txt.width = stage.stageWidth-15;
	noticia_txt.height = stage.stageHeight;
}

Ao carregar o filme acontece que após cada trecho do texto que foi alterado pela tag ele coloca uma quebra de linha.

Ex:

preciso desse help

Por favor, ajude quem puder!

 

Quer dizer ele está seguindo o seguinte crítério, colocou tag eu quebro a lilnha. E para quem teve a oportunidade de notar no ultimo item que está com duas tags (<b> e <font>) ele também adicionou um TAB antes do texto formatado.

 

Outro fato curioso e não menos importante é que ao acionar o embed do flash no Dinamic text criado, ele simplesmente ignora os textos em negrito.

 

Quem puder ajudar eu agradeço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

1º acrescenta essa linha:

 

XML.prettyPrinting = false;

isso é para ele ignorar espaços depois de cada tag

 

e alterar essa linha:

 

noticia_txt.htmlText = lista.noticia;

para :

 

noticia_txt.htmlText = lista.noticia.toXMLString();

só isso deve dá

 

[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ual! Sensacional, ficou perfeito e nem precisei colocar o CDATA no mxl. Muito bom!!!

Agora quanto ao Embed, você sabe me diser?

Eu estou usando o modo manual do flash, mas ele some com o negrito.

Já tentei usar

noticia_txt.embedFonts = true;
mas daí ele não mostra nada.

Eu uso o Embed para as fontes ficarem mais "brilhantes", mas eu tenho dúvida se vale mesmo a pena, pois o arquivo aumenta bem de tamanho.

 

Muito obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza Eder, muito útil isso também!

Eu incorporei esse código no meu projeto para que ele leia o xml no campo noticia_txt, mas qando eu marco a opção negrito ele atribui para todo o texto, e além disso ignorou a tag de mudança de cor também.

Eu quero, se for possível, que o texto mantenha as marcas da tag html que está vindo do arquivo xml.

Fazendo dessa maneira que você sugeriu é o mesmo que colocar o negrito e embed manualmente direto nas propriedades do campo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.