graven 0 Denunciar post Postado Julho 16, 2009 e ai galera to com um baita problema aqui q nao consigo resolver.. tentei procurar pela net mas nao vai... eu to fazendo um swf q carrega as imagens dinamicamente de uma pasta, o PHP le e puxa todos os arquivos da pasta "imgs" e faz uma animação dinamicamente, a cada 3 segundos puxa uma img... só q as imagens tem tamanhos diferentes, dai quando uma imagem é carregada ela fica lá, dai o script carrega outra img depois de 3 segs, dai ficam as duas, entao depois de 3 segs ele carrega outra img, dai ficam 3 imgs, e assim por diante.. só q como as imagens vao ficando uma em cima da outra e como seus tamanhos sao diferentes, ficam todas aparecendo juntas (feio pra #@?$%~!)... a minha solução foi de tentar descarregar as imgs do clip, usando o UNLOADCILP, mas nao consegui fazer descarregar A ULTIMA IMAGEM CARREGADA... nao consegui aplicar DE JEITO NEHUM de modo eficaz isso... ahh sim... e um detalhe a mais, quando o clip chega no final ele nao está voltando novamente ao começo ele pára... aqui segue o código --------------------------------------------------------- import gs.TweenLite; import mx.transitions.easing.*; var diretorio:String = "http://www.alvoglobal.com.br/clientes/ascon/imgs/associados/"; var fotos:Array = fotos ? fotos.split(",") : new Array("1", "2", "3"); // $fotos vem pelo html, var a:Number = 0; function imagem() { var mc:MovieClip = createEmptyMovieClip("imagem" + getNextHighestDepth(), getNextHighestDepth()); trace(mc); var listener:Object = new Object(); listener.onLoadInit = function(mc:MovieClip) { TweenLite.from(mc,1.5,{_alpha:0, ease:Strong.easeOut}); a = a + 1 >= fotos.length ? 0 : a + 1; setTimeout(imagem,3000); }; var mcl:MovieClipLoader = new MovieClipLoader(); mcl.addListener(listener); mcl.loadClip(diretorio + fotos[a],mc); } imagem(); ---------------------------------------------------------------------- NAO CONSEGUI APLICAR PARA DESCARREGAR O CLIP e as imagens, ele ou descarrega TUDO ou nada, porque as imagens estao sendo carregadas no mesmo movie mc abracaao a todos cristian Compartilhar este post Link para o post Compartilhar em outros sites
Matheus Brito 12 Denunciar post Postado Julho 16, 2009 Não seria melhor você carregar cada uma em um movie? Abs Compartilhar este post Link para o post Compartilhar em outros sites
graven 0 Denunciar post Postado Julho 16, 2009 Dica: clique dentro desta caixa para carregar o editor pois é.... mas nesse código ai.. eu nem sei como eu faria pra fazer varios movies e juntar com o resto do sódigo, porque eu teria que colocar dentro de um for(); dai eu teria q deixar dentro o moviecliploader, dai o listener iria pra baixo... eu fiz esse código mas nao tenho tanta firmeza nao utilização CONJUNTA de listeners, setTimeouts, e esse esquema com as variaveis que somam a cada volta q o movie dá.... eu to me apertando nessa questão de fazer funcionar com todas as funcoes juntas... alguém tem alguma idéia de como ficaria isso.. valeu ai piazada..... Compartilhar este post Link para o post Compartilhar em outros sites
fogolin91 0 Denunciar post Postado Julho 19, 2009 Cara, não é o caso de usar add e removeChildAt ???? Uma coisa que é simples e bacana também é que existe um lightbox para flash... talvez facilite bastante o trabalho só editar o layout do loightbox na versão flash... e Não aceita só fotos, mas videos em swf tbm... beleza? Compartilhar este post Link para o post Compartilhar em outros sites
leila•trupe 1 Denunciar post Postado Julho 20, 2009 Vamos lá. O segredo é o seguinte... você criar novos MCs dentro de um MC principal, e ir descarregando o MC abaixo assim que carregar o que estiver acima (porque eles têm tamanhos diferentes, fica estranho esperar o atual terminar de carregar pra então descarregar seco o debaixo, certo?). import gs.TweenLite; import mx.transitions.easing.*; var diretorio:String = "http://www.alvoglobal.com.br/clientes/ascon/imgs/associados/"; var fotos:Array = fotos ? fotos.split(",") : new Array("1", "2", "3"); // $fotos vem pelo html, //crie um MC onde as imagens serão carregadas e posicione-o no lugar certo - pode ser criado na timeline também, só lembre de instanciá-lo pra usar no código aqui this.createEmptyMovieClip("todasImagens_mc", this.getNextHighestDepth(); var a:Number = 0; //esse é seu contador function imagem() { //armazene o número que será atribuido ao seu novo MC e ao nivel em que ele será criado numero = todasImagens_mc.getNextHighestDepth() var mc:MovieClip = todasImagens_mc.createEmptyMovieClip("imagem" + numero, numero); trace(mc); var listener:Object = new Object(); listener.onloadInit = function(mc:MovieClip) { //aqui você dá fadein na imagem que acabou de ser carregada TweenLite.from(mc,1.5,{_alpha:0, ease:Strong.easeOut}); //aqui você dá fadeout na imagem anterior - você sabe que é anterior pois está um depth abaixo TweenLite.from(todasImagens_mc["imagem" + (numero - 1), 1.5, {_alpha:100, ease:Strong.easeOut}); a = a + 1 >= fotos.length ? 0 : a + 1; setTimeout(imagem, 3000); }; var mcl:MovieClipLoader = new MovieClipLoader(); mcl.addListener(listener); mcl.loadClip(diretorio + fotos[a], mc); }; imagem(); Eu posso ter errado na aplicação do TweenLite pq não estou muito familiarizada (eu uso muito o TweenMax), mas fiz o inverso do seu código na aplicação do fadeOut. Outra coisa que pode influenciar é o caminho dos MCs, então se o todasImagens_mc estiver no _root, coloque sempre _root.todasImagens_mc para referenciá-lo, mesmo dentro dos TweensLite. No TweenMax existe uma função chamada onComplete. Se for igual, você pode retirar o MC anterior do processamento, excluindo-o: //aqui você dá fadeout na imagem anterior - você sabe que é anterior pois está um depth abaixo TweenLite.from(todasImagens_mc["imagem" + (numero - 1), 1.5, {_alpha:100, ease:Strong.easeOut, onComplete:retira}); function retira(){ _root.todasImagens_mc["imagem" + (numero - 1)].removeMovieClip(); //ou você também pode usar: (lembre-se de uma ou outra função apenas _root.todasImagens_mc["imagem" + (numero - 1)].unloadMovie(); } Mas verifique se existe o 'onComplete' no TweenLite, porque eu não tenho certeza. Ou comece a usar TweenMax, que é da mesma "família" e tem mais recursos. É isso, espero ter resolvido e ajudado. Compartilhar este post Link para o post Compartilhar em outros sites
graven 0 Denunciar post Postado Julho 20, 2009 lightbox na versão flash hum,mm parece interessante... mas como se usa isso???;..hehe valeu... abracosss;;; Compartilhar este post Link para o post Compartilhar em outros sites
Felipe Abranches 1 Denunciar post Postado Julho 20, 2009 Por que ao invés de mandar "getNextHighstDepht" você não manda carragar tudo no mesmo "depht"? Daí cada novo carregado apaga o anterior. è só troca-lo po um número. Cria um for pra nomear e puxar as imagens. for(z=1;z<4;z++){ foto=eval("a"+z); foto.(chama o que você quiser) } var mc:MovieClip = createEmptyMovieClip("imagem" + z, 1); Compartilhar este post Link para o post Compartilhar em outros sites
graven 0 Denunciar post Postado Agosto 6, 2009 cara... fechou.... ficou tri massa (bem na pinha, como se diz,haha)... as transiçoes fecharam tri.... ahh e o tweenLite tem sim o onComplete... mas nao apliquei ele ainda mas quero aplicar, pois fica melhor... valeu mesmo a mao pra ti e pra toda a galera que ajudou... um forte abraço pra vcs... Cristian Compartilhar este post Link para o post Compartilhar em outros sites