Marrabel 20 Denunciar post Postado Maio 9, 2013 Boa tarde a todos, Possuo um banner rotativo aonde gostaria de fazer uma pequena alteração mas não estou obtendo sucesso. Eis aqui meu AS3: import fl.transitions.Tween; import fl.transitions.easing.*; var Delay:int = 0; var Total:int = 0; var Imagens:XMLList = null; var Carregadores:Array = new Array(); var Contador:int = 0; var Proximo:int = 0; var Tempo:Timer = null; var Transicao:Tween = null; var Conteudo:Sprite = new Sprite(); var Descricao:TextField = new TextField(); var Carregador:URLLoader = new URLLoader(); Carregador.load(new URLRequest("banner.xml")); Carregador.addEventListener(Event.COMPLETE, Completo, false, 0, true); function Completo(e:Event):void { var ArquivoXML:XML = new XML(e.target.data); Carregador.removeEventListener(Event.COMPLETE, Completo); Carregador = null; Imagens = ArquivoXML.imagem; Delay = Imagens[Proximo].@delay; Total = Imagens.length(); CarregaImagens(); } function CarregaImagens():void { for (var i:int = 0; i < Total; i++) { var Link:String = Imagens[i].@link; var Carregador:Loader = new Loader(); Carregador.load(new URLRequest(Link)); Carregador.contentLoaderInfo.addEventListener(Event.COMPLETE, ImagemCarregada); Carregadores.push(Carregador); } } function ImagemCarregada(e:Event):void { Contador++; if (Contador == Total) { ConfigureBanner(); } } function ConfigureBanner():void { addChild(Conteudo); Descricao.selectable = false; Descricao.width = 1024; Descricao.height = 50; Descricao.x = 0; Descricao.y = 718; addChild(Descricao); ProximaImagem(); Tempo = new Timer(Delay * 1000); Tempo.addEventListener(TimerEvent.TIMER, ConfiguraTempo); Tempo.start(); } function ConfiguraTempo(e:TimerEvent):void { Proximo++; if (Proximo == Total) { Proximo = 0; } ProximaImagem(); } function ProximaImagem():void { if (Conteudo.numChildren > 0) { Conteudo.removeChildAt(0); } Carregadores[Proximo].alpha = 0; Conteudo.addChildAt(Carregadores[Proximo], 0); Transicao = new Tween(Carregadores[Proximo], "alpha", Strong.easeOut, 0, 1, 2,true); Descricao.text = Imagens[Proximo].@descricao; } Eu gostaria de colocar uma opção para atribuir um tempo (delay) para cada imagem. Pois há imagens mais importantes que outras que devem permanecer por mais tempo. Obrigado desde ja. Compartilhar este post Link para o post Compartilhar em outros sites
Public2004 79 Denunciar post Postado Maio 9, 2013 Amigo, você já tem no seu code uma definição de tempo para os banners, se quer definir um tempo específico para cada, adicione essa informação no XML e traga essa informação com as demais, ao carregar a imagem, atribua para essa o respectivo tempo. Att. Compartilhar este post Link para o post Compartilhar em outros sites