Aconrado 0 Denunciar post Postado Abril 25, 2011 Sou novo com Actionscript+XML, e tenho que alterar um banner onde muda a imagens com o Tempo. Mas agora presiço colocar um botão proximo e anterior. Alguem poderia me dar um dica ? As imagens estão no XML. Aqui estão os codigos: XML: <?xml version="1.0" encoding="UTF-8"?> <destaques> <destaque uid='1' area='musica' foto='C:/site/foto1.jpg' titulo='Site' chamada='Site...' url_link='http://www.site.com.br/noticias/uma_noticia_qualquer' /> <destaque uid='2' area='musica' foto='C:/site/foto1.jpg' titulo='Site' chamada='Site...' url_link='http://www.site.com.br/noticias/uma_noticia_qualquer' /> <destaque uid='3' area='musica' foto='C:/site/foto1.jpg' titulo='Site' chamada='Site...' url_link='http://www.site.com.br/noticias/uma_noticia_qualquer' /> </destaques> Actionscript: //valores iniciais _root.xmllink; stop(); //carrega zeh tween #include "mc_tween2.as" ///////////////CRIA AS ARRAYS////////////////// //array do id arUid=[]; //array da area arArea=[]; //array do título arTitulo=[]; //array da chamada arTChamada=[]; //array da foto arFoto=[]; //array do link arLink=[]; //--------------------------------------------- //array das fotos carregadas arFotoCar=[]; //apaga tudo _level0.meio.conteudo._alpha=0; _level0.nav._alpha=0; //carrega o xml ///////////////CARREGA O XML E CONCATENA OS VALORES PARA AS ARRAYS////////////////// var vidXML:XML = new XML();//Declara um novo objeto XML vidXML.load("C:/site/destaquehome.xml");//Carrega o arquivo XML //vidXML.load("http://www.site.com.br/site/xml_destaquesHome");//Carrega o arquivo XML // vidXML.ignoreWhite = true;//Ignora os espaços em branco do XML vidXML.onLoad = function(success:Boolean){ if (success) { //Quando o XML for carregado, executa a função //quantidade de destaques _root.qtdDest = this.firstChild.childNodes.length; //for para pegar os ítens da array for (var i = 0;i<_root.qtdDest;i++) { if (this.firstChild.childNodes[i].attributes.uid!="") { //pega a array do id //verifica se o mesmo id já foi puxado varpos=0; for (var j=0; j<(i+1);j++) { if (this.firstChild.childNodes[i].attributes.uid == arUid[j]) { varpos=1 }// }// if (varpos==0) { arUid.push(this.firstChild.childNodes[i].attributes.uid); //pega a array da area arArea.push(this.firstChild.childNodes[i].attributes.area); //pega a array do título arTitulo.push(this.firstChild.childNodes[i].attributes.titulo); //pega a array da chamada arTChamada.push(this.firstChild.childNodes[i].attributes.chamada); //pega array da foto arFoto.push(this.firstChild.childNodes[i].attributes.foto); //pega array do link arLink.push(this.firstChild.childNodes[i].attributes.url_link); }// }// }//fim for //começa inicia(); }// }//fim function //carrega a primeira ///////////////FUNÇÃO INICIAL////////////////// function inicia() { //carrega a primeira foto carrega_imagem(arFoto[0],0); muda_layout(0); nav (); }//fim function ///////////////CARREGA AS IMAGENS////////////////// //foto atual caminho e nome da foto a ser carregada function carrega_imagem (fotoAtual,nume) { //cria um objeto carregaRes = new Object(); //verifica se terminou de carregar carregaRes.onLoadInit = function(target_mc:MovieClip) { // _level0.meio.fotoHome._alpha=0; //_level0.meio.fotoHome.alphaTo(100,1,"linear"); //mostra a navegação _level0.nav.alphaTo(100,1); // _level0.meio.fotoHome.alphaTo(0,0.5,"linear",0); // _level0.meio.conteudo.alphaTo(0,0.5,"linear",0); // _level0.meio.fotoHome.onTweenComplete = function () { // _level0.meio.fotoHome.onTweenComplete = null; _level0.meio.fotoHome.alphaTo(100,0.5,"linear",0); _level0.meio.conteudo.alphaTo(100,0.5,"linear",0); //posiciona _level0.meio.fotoHome.fotoin._x=288-(_level0.meio.fotoHome._width/2); _level0.meio.ajustaFund.resizeTo(_level0.meio.fotoHome._width,_level0.meio.fotoHome._height,1); _level0.meio.ajustaFund.slideTo(_level0.meio.fotoHome._x,_level0.meio.fotoHome.y,1); //mostra o texto _level0.meio.conteudo.alphaTo(100,1,"linear"); //começa a contar o tempo contador=0; conta_tempo(nume); // }// }//fim function //cria um carregador var carFotRes:MovieClipLoader = new MovieClipLoader(); //vincula o carregador ao acompanhamento de eventos carFotRes.addListener(carregaRes); //pega a imagem carFotRes.loadClip(fotoAtual,"_level0.meio.fotoHome.fotoin"); //deixa o movie transparente //_level0.meio.fotoHome._alpha=0; }//fim function //tempo começa ///////////////CONTROLADOR DE TEMPO////////////////// function conta_tempo(nume){ // //var meuTempo=setTimeout(verificador,5000); _level0.onEnterFrame = function () { contador++; if (contador==50) { //carrega a próxima mostra(nume,1); delete _level0.onEnterFrame; } } }//fim function // botao anterior/proximo avancar.onRelease = function() { // ao clicar no avançar... if(i == total-1) { // ...se já estiver na última foto... i=0; // volta pra primeira } else { // senão... i++; // vai para a próxima } preloader(); // ativa o preloader carrega(); // carrega a foto alinhar(); // alinha a foto no meio } voltar.onRelease = function() { // ao clicar no botão voltar... if(i == 0) { // se estiver na primeira foto... i=total-1;//... quando clicar pra voltar, vai pra última } else { // senão... i--; // ... volta uma foto } preloader(); // ativa o preloader carrega(); // carrega a foto alinhar(); // alinha a foto no meio } //mostra function mostra(nume,conc) { nume = nume+(conc); if(nume>=qtdDest){ nume = 0 }//fim if if(nume<0){ nume = qtdDest-1; }//fim if //atualiza a navegAÇÃO nav (nume); //apaga tudo _level0.meio.fotoHome.alphaTo(0,0.5,"linear",0.3); _level0.meio.conteudo.alphaTo(0,0.7); _level0.nav.alphaTo(0,0.5); _level0.meio.fotoHome.onTweenComplete = function () { _level0.meio.fotoHome.onTweenComplete = null; //carrega a foto carrega_imagem(arFoto[nume],nume); //carrega o conteúdo muda_layout(nume); }// }//fim function function nav (nume) { //próximo anterior _level0.nav.proximo.onRelease=function () { mostra(); }//fim function _level0.nav.anterior.onRelease=function () { mostra(); }//fim function }//fim function //////////////////////////MUDA LAYOUT//////////////////// function muda_layout (nume) { //texto _level0.meio.conteudo.chamada.embedFonts = true; _level0.meio.conteudo.chamada.setTextFormat(arial,arial_bold); _level0.meio.conteudo.chamada.htmlText=searchAndReplace(arTChamada[nume], '“', '"'); _level0.meio.conteudo.chamada.htmlText=searchAndReplace(_level0.meio.conteudo.chamada.text, '”', '"'); _level0.meio.conteudo.chamada.htmlText=searchAndReplace(_level0.meio.conteudo.chamada.text, '–', '-'); _level0.meio.conteudo.chamada.htmlText=searchAndReplace(_level0.meio.conteudo.chamada.text, '’', '’'); _level0.meio.conteudo.chamada.htmlText = " <font size='12' face='Arial Rounded MT Bold' color='#"+muda_cor(nume)+"'><b>"+arTitulo[nume]+"</b></font><br>"+_level0.meio.conteudo.chamada.text+"</font>"; //cor do texto _level0.meio.conteudo.tit.colorTo(muda_cor(nume),0); //icone _level0.meio.conteudo.icos.gotoAndStop(arArea[nume]); //link _level0.meio.onPress=function () { getURL(arLink[nume],"_parent"); }//fim onpress }//fim function function searchAndReplace(holder, searchfor, replacement) { temparray = holder.split(searchfor); holder = temparray.join(replacement); return (holder); } //////////////////////////CORES///////////////////////// function muda_cor (nume) { switch (arArea[nume]) { case "musica" : cor="2E6432"; break; case "artes" : cor="EE1D83"; break; case "cinema" : cor="A2024A"; break; case "danca" : cor="812991"; break; case "teatro" : cor="03A99F"; break; case "patrimonio" : cor="AC6900"; break; case "literatura" : cor="0083C3"; break; }//fim switch return cor; }//fim function No ".fla" tenho o: Scene 1- Code : Quadro 1 "Onde tenho o Codigo" Nav- Proximo(Botão) " on (press){nextFrame();} " Anterior(Botão)" on (press){prevFrame();} " Proximo(Botão)- Layer 2 :Quadro 1 " on (press){nextFrame();} " Layer 2 :Quadro 8 " on (press){nextFrame();} " Anterior(Botão)- Layer 2 :Quadro 1 " on (press){prevFrame();} " Layer 2 :Quadro 8 " on (press){prevFrame();} " icos- Layer 10 : Quadro 1 " stop(); " "Não sei o que isso fais exatamente". Compartilhar este post Link para o post Compartilhar em outros sites
Aconrado 0 Denunciar post Postado Abril 27, 2011 Bem, já foi resolvido o botão proximo com esse codigo nume = nume+(conc); if (nume >= qtdDest) { nume = 0 } //fim if if (nume < 0) { nume = qtdDest - 1; } //fim if //atualiza a navegAÇÃO nav(nume); //apaga tudo _level0.meio.fotoHome.alphaTo(0,0.5,"linear",0.3); _level0.meio.conteudo.alphaTo(0,0.7); _level0.nav.alphaTo(0,0.5); _level0.meio.fotoHome.onTweenComplete = function () { _level0.meio.fotoHome.onTweenComplete = null; //carrega a foto carrega_imagem(arFoto[nume],nume); //carrega o conteúdo muda_layout(nume); } Mas agora esta difissiul de fazer o botão Voltar funcionar. Alguem poderia me dar um dica com esse codigo fazer Voltar em vez de ir para Proxima ? Agradeço Aconrado. Compartilhar este post Link para o post Compartilhar em outros sites
Aconrado 0 Denunciar post Postado Abril 29, 2011 Problema resolvido. Att, Arthur Compartilhar este post Link para o post Compartilhar em outros sites