Tenho esse codigo que usa XML, ele mostra um titulo e um texto nas barras que foram construidas, eu gostaria
de saber como faço para aparecer o restante dos titulos e conteudos nos retangulos restantes.
Toda vez que clicar no botão "Exibir" ele deve sortear randomicamente os "titulos" e "conteudos(textos)" e mostrar os indices do mesmo
no retangulo que fica abaixo do botão "exibir"..
a variavel "myr" é uma fonte qualquer que você escolhe, basta adicionar a fonte a library e adicionar ao AS..
Pra ajudar o entendimento, deve ficar como a imagem abaixo:
Codigo XML:
<textos>
<artigo titulo="Primeiro">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras porta commodo urna eleifend rutrum. Mauris urna sem, auctor id suscipit placerat, ultricies vitae nisl. Nulla id magna arcu, id elementum quam. Nam non mi et mauris rhoncus molestie.
</artigo>
<artigo titulo="Segundo">
Donec id egestas urna. Mauris consectetur eleifend rhoncus. Quisque sagittis ornare ipsum non iaculis. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Proin nunc neque, laoreet nec pretium nec, mattis sit amet erat. Morbi at purus elementum orci euismod sagittis.
</artigo>
<artigo titulo="Terceiro">
Nam quis odio risus. Donec sit amet arcu felis. Nunc hendrerit vulputate lacus sit amet venenatis. Maecenas eros quam, facilisis ac porta et, condimentum at tellus. Pellentesque lobortis est ut turpis suscipit auctor.
</artigo>
<artigo titulo="Quarto">
Suspendisse mauris urna, ornare vel ornare non, pharetra varius risus. Vivamus eu tortor nibh, eget suscipit nunc. Nullam eu nunc quis ante pretium aliquet ut quis lacus. Mauris et arcu ac ipsum consectetur rutrum.
</artigo>
<artigo titulo="Quinto">
Ut ac neque est. Pellentesque malesuada justo at libero feugiat faucibus. Curabitur et lacus lorem. Ut pulvinar velit ante. Quisque vitae suscipit justo.
</artigo>
<artigo titulo="Sexto">
Vestibulum iaculis pulvinar ipsum, a iaculis ipsum facilisis at. Etiam accumsan velit ac diam sagittis eget suscipit tellus viverra. Aenean imperdiet elit auctor lorem scelerisque ut aliquet tellus lacinia.
</artigo>
<artigo titulo="Sétimo">
Maecenas at sem id ligula lobortis congue non sit amet nulla. Vivamus et libero at libero sodales porttitor ut vitae nisi. Aenean mattis mattis risus, at ornare nulla dictum nec. Vestibulum ultrices dapibus ullamcorper.
</artigo>
<artigo titulo="Oitavo">
Donec consequat dignissim nisi. Suspendisse libero massa, euismod dignissim luctus sed, vestibulum at nisl. Suspendisse magna neque, mollis sit amet adipiscing vitae, dapibus ac magna. Praesent non risus et sapien porttitor blandit eu eget eros. Phasellus feugiat cursus dolor.
</artigo>
<artigo titulo="Nono">
Mauris et eros leo. Sed commodo vehicula mi fringilla bibendum. Quisque venenatis, metus vel facilisis sollicitudin, mauris mauris lacinia mi, a interdum metus tellus sit amet magna.
</artigo>
<artigo titulo="Décimo">
Vivamus eu tortor nibh, eget suscipit nunc. Nullam eu nunc quis ante pretium aliquet ut quis lacus. Mauris et arcu ac ipsum consectetur rutrum. Fusce porttitor, massa a dapibus porttitor, justo quam ullamcorper nisl, a hendrerit lorem ipsum eu libero.
</artigo>
</textos>
Codigo AS3:
import caurina.transitions.*;
import flash.display.Sprite;
// Retangulo Vertical da esquerda, 1 a entrar no palco, posição 1 canto esquerdo superior
var barraRetangulovertical:Sprite = new Sprite();
barraRetangulovertical.graphics.beginFill(0x666666);
barraRetangulovertical.graphics.drawRoundRect(0,0,140,280,5,5);
barraRetangulovertical.graphics.endFill();
barraRetangulovertical.y = -300;
barraRetangulovertical.x = 20
addChild(barraRetangulovertical);
Tweener.addTween(barraRetangulovertical, { x:20 , y:20 , time: 2 , delay:1.5 , transition:"easeOutBack"});
// retangulo pequeno, ficara com os indices para controle com xml
var barraRetangulopequeno:Sprite = new Sprite();
barraRetangulopequeno.graphics.beginFill(0x666666);
barraRetangulopequeno.graphics.drawRoundRect(0,0,140,40,5,5);
barraRetangulopequeno.graphics.endFill();
barraRetangulopequeno.y = -100;
barraRetangulopequeno.x = 20
addChild(barraRetangulopequeno);
Tweener.addTween(barraRetangulopequeno, { x:20 , y:320 , time: 2 , delay:1.5 , transition:"easeOutBack"});
// Retangulo 1 da direita (de baixo), primeiro a entrar, 3 na posicaoa de cima para baixo
var barraRetangulo:Sprite = new Sprite();
barraRetangulo.graphics.beginFill(0x666666);
barraRetangulo.graphics.drawRoundRect(0,0,500,100,5,5);
barraRetangulo.graphics.endFill();
barraRetangulo.y = -100;
barraRetangulo.x = 180
addChild(barraRetangulo);
Tweener.addTween(barraRetangulo, { x:180 , y:260 , time: 2 , delay:2 , transition:"easeOutBack"});
// Retangulo 2 da direita (do meio), segundo a entrar, 2 na posicaoa de cima para baixo
var barraRetangulo2:Sprite = new Sprite();
barraRetangulo2.graphics.beginFill(0x666666);
barraRetangulo2.graphics.drawRoundRect(0,0,500,100,5,5);
barraRetangulo2.graphics.endFill();
barraRetangulo2.y = -100;
barraRetangulo2.x = 180
addChild(barraRetangulo2);
Tweener.addTween(barraRetangulo2, { x:180 , y:140 , time: 2 , delay:2.5 , transition:"easeOutBack"});
// Retangulo 3 da direita (de cima), Terceiro a entrar, 1 na posicaoa de cima para baixo
var barraRetangulo3:Sprite = new Sprite();
barraRetangulo3.graphics.beginFill(0x666666);
barraRetangulo3.graphics.drawRoundRect(0,0,500,100,5,5);
barraRetangulo3.graphics.endFill();
barraRetangulo3.y = -100;
barraRetangulo3.x = 180
addChild(barraRetangulo3);
Tweener.addTween(barraRetangulo3, { x:180 , y:20 , time: 2 , delay:3 , transition:"easeOutBack"});
// FIM DA ENTRADA DOS RETANGULOS, INICIO DA MASCARA ********
// Palco para destaque do framework
var palco:Sprite = new Sprite();
palco.graphics.lineStyle(1,0x000000);
palco.graphics.beginFill(1,0x000000);
palco.graphics.drawRect( 0,0,700,380 );
palco.graphics.endFill();
addChild(palco);
//************** **************** ***************** *************** **************** ************* *******
// Mascara do barraRetangulo 3, quadrado da direita 3 de cima pra baixo
var fundo:Sprite = new Sprite();
fundo.graphics.beginFill(0x666666);
fundo.graphics.drawRect(0,0,700,380);
fundo.graphics.endFill();
addChild(fundo);
var quad:Sprite = new Sprite();
quad.graphics.beginFill(0x000000);
quad.graphics.drawRect(0,0,500,100);
quad.graphics.endFill();
quad.x = 800;
quad.y = 20;
fundo.addChild(quad)
fundo.mask = barraRetangulo3
Tweener.addTween(quad,{x:320,time:2,delay:5});
//************** **************** ***************** ***************
// Mascara do barraRetangulo 2, quadrado da direita 2 de cima pra baixo
var fundo2:Sprite = new Sprite();
fundo2.graphics.beginFill(0x666666);
fundo2.graphics.drawRect(0,0,700,380);
fundo2.graphics.endFill();
addChild(fundo2);
var quad2:Sprite = new Sprite();
quad2.graphics.beginFill(0x000000);
quad2.graphics.drawRect(0,0,500,100);
quad2.graphics.endFill();
quad2.x = 1000;
quad2.y = 140;
fundo2.addChild(quad2)
fundo2.mask = barraRetangulo2
Tweener.addTween(quad2,{x:320,time:2,delay:5.5});
//************** **************** ***************** ***************
// Mascara do barraRetangulo 1, quadrado da direita 1 de cima pra baixo
var fundo4:Sprite = new Sprite();
fundo4.graphics.beginFill(0x666666);
fundo4.graphics.drawRect(0,0,700,380);
fundo4.graphics.endFill();
addChild(fundo4);
var quad4:Sprite = new Sprite();
quad4.graphics.beginFill(0x000000);
quad4.graphics.drawRect(0,0,500,100);
quad4.graphics.endFill();
quad4.x = 1000;
quad4.y = 260;
fundo4.addChild(quad4)
fundo4.mask = barraRetangulo
Tweener.addTween(quad4,{x:320,time:2,delay:6});
//************** **************** ***************** ***************
// Mascara do barraRetangulovertical, vertical maior da esquerda
var fundo5:Sprite = new Sprite();
fundo5.graphics.beginFill(0x666666);
fundo5.graphics.drawRect(0,0,700,380);
fundo5.graphics.endFill();
addChild(fundo5);
var quad5:Sprite = new Sprite();
quad5.graphics.beginFill(0x000000);
quad5.graphics.drawRect(0,0,140,280);
quad5.graphics.endFill();
quad5.x = 20;
quad5.y = 800;
fundo5.addChild(quad5)
fundo5.mask = barraRetangulovertical
Tweener.addTween(quad5,{y:120,time:2,delay:4});
//*********************************************************************************************************************************
var xmlTextos:URLLoader = new URLLoader();
xmlTextos.load(new URLRequest("textos.xml"));
var listaTexto:XMLList;
var xTextos:XML;
var indice:Number = 0;
xmlTextos.addEventListener(Event.COMPLETE, carr);
function carr(event:Event):void
{
xTextos = XML(event.target.data);
listaTexto = xTextos.children();
titulo.text = xTextos.children()[indice].attribute("titulo");
conteudo.text = xTextos.children()[indice];
Tweener.addTween(titulo,{x:-500, time:0.6, delay:1.5, transition:"easeOutBack"});
Tweener.addTween(conteudo,{x:-500,time:0.6,delay:2,transition:"easeOutBack"});
}
stage.addEventListener(KeyboardEvent.KEY_DOWN,teclado);
function teclado(event:KeyboardEvent):void
{
if(event.keyCode == Keyboard.RIGHT)
{
if(indice < listaTexto.length()-1)
{
Tweener.addTween(conteudo,{x:400,time:0.6,transition:"easeInBack"});
Tweener.addTween(titulo,{x:400,time:0.6,delay:0.2,transition:"easeInBack",onComplete:proximo});
}
}
if(event.keyCode == Keyboard.LEFT)
{
if(indice > 0)
{
Tweener.addTween(conteudo,{x:0,time:0.6,transition:"easeInBack"});
Tweener.addTween(titulo,{x:0,time:0.6,delay:0.2,transition:"easeInBack",onComplete:anterior});
}
}
}
function proximo():void
{
indice++;
trace( xTextos.children()[indice]);
titulo.x = 0;
conteudo.x = 0;
titulo.text = xTextos.children()[indice].attribute("titulo");
conteudo.text = xTextos.children()[indice];
Tweener.addTween(titulo,{x:220,time:0.6,delay:0.2,transition:"easeOutBack"});
Tweener.addTween(conteudo,{x:340,time:0.6,transition:"easeOutBack"});
}
function anterior():void
{
indice--;
trace( xTextos.children()[indice]);
titulo.x = 800;
conteudo.x = 500;
titulo.text = xTextos.children()[indice].attribute("titulo");
conteudo.text = xTextos.children()[indice];
Tweener.addTween(titulo,{x:220,time:1,delay:0,transition:"easeOutBack"});
Tweener.addTween(conteudo,{x:340,time:2,transition:"easeOutBack"});
}
//***********************
var grupo:MovieClip = new MovieClip();
var bloco:Sprite = new Sprite();
bloco.graphics.beginFill(0xffcc22);
bloco.graphics.drawRoundRect(180,20,500,100,5,5);
bloco.graphics.endFill();
//*************************
var formatoTi:TextFormat = new TextFormat();
var mFonte = new myr();
formatoTi.font = mFonte.fontName;
formatoTi.size = 18;
var formatoTe:TextFormat = new TextFormat();
formatoTe.font = mFonte.fontName;
formatoTe.size = 14;
var titulo:TextField = new TextField();
titulo.defaultTextFormat = formatoTi;
titulo.width = 100;
titulo.height = 100;
titulo.y = 53;
titulo.selectable = false;
titulo.textColor = 0xffffff;
var conteudo:TextField = new TextField();
conteudo.defaultTextFormat = formatoTe;
conteudo.width = 320;
conteudo.height = 80;
conteudo.y = 35;
conteudo.selectable = false;
conteudo.textColor = 0xffffff;
conteudo.wordWrap = true;
addChild(bloco);
grupo.addChild(fundo);
grupo.addChild(quad);
grupo.addChild(titulo);
grupo.addChild(conteudo);
addChild(grupo);
grupo.mask = bloco;
Pergunta
Johnkilla
Tenho esse codigo que usa XML, ele mostra um titulo e um texto nas barras que foram construidas, eu gostaria
de saber como faço para aparecer o restante dos titulos e conteudos nos retangulos restantes.
Toda vez que clicar no botão "Exibir" ele deve sortear randomicamente os "titulos" e "conteudos(textos)" e mostrar os indices do mesmo
no retangulo que fica abaixo do botão "exibir"..
a variavel "myr" é uma fonte qualquer que você escolhe, basta adicionar a fonte a library e adicionar ao AS..
Pra ajudar o entendimento, deve ficar como a imagem abaixo:
Codigo XML:
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.