Ir para conteúdo

POWERED BY:

Arquivado

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

dmorsoleto

problemas para descarregar miniaturas

Recommended Posts

fala galera...

meu problema é o seguinte...

tenho uma galeria em flash que esta sendo alimentada por um xml...

Dentro desse xml existem 3 categorias de galeria.

Bom ela carrega a primeira categoria normalmente, meu problema é quando clico para ele ir para a categoria seguinte.

Ela carrega soh que nao tira os movies clips duplicados da primeira categoria... Sei que tenho que crir uma funcao que ele descarregue esses movies clips, mas nao to conseguindo... Espero que tenham entendido...Abaixo segue meu codigo... A linha vermelha é onde esta duplicando os movies clips...

 

stop();

System.useCodepage = true;

btfeminino.enabled = false;

gallery = new XML();

gallery.load("galeriacolecoes.xml");

gallery.ignoreWhite = true;

gallery.onLoad = function (){

parseXml();

};

var b:Number = 2;

var contfotos:Number = 0;

var ultimothumb:MovieClip;

var atual:Number;

var arraythumbs:Array;

var retira:Boolean;

retira = false;

 

 

onMouseMove = function(){

verifica();

}

 

function verifica(){

 

//se ele for foto vertical ele vai para direita

if(_root.img._width == 356){

_root.img._x = _root.mc_foto._width/2-120;

}else{

_root.img._x = _root.mc_foto._x;

}

}

 

 

function parseXml(){

 

galleryTitle = gallery.childNodes[0].attributes.title;

thumbDir = gallery.childNodes[0].attributes.thumbDir;

imageDir =gallery.childNodes[0].attributes.imageDir;

viewRandom = gallery.childNodes[0].attributes.random;

 

 

//comecar com esse texto

_root.descricaoimg.desc = gallery.firstChild.childNodes[2].childNodes[0].childNodes[5].childNodes;

_root.descricaoimg.desc2 = gallery.firstChild.childNodes[2].childNodes[0].childNodes[6].childNodes;

 

for (i=0; i<gallery.firstChild.childNodes.childNodes.length; i++){

duplicateMovieClip("item_mc","item_mc"+i,i);

thumbs = _root.container["item_mc"+i];

thumbs._x += (thumbs._width+10)*i;

var mcl:MovieClipLoader = new MovieClipLoader();

mcl.loadClip(thumbDir+gallery.firstChild.childNodes.childNodes.childNodes[

3].childNodes,thumbs.peq);

thumbs.atual = i;

arraythumbs = thumbs;

 

thumbs.onPress = function(){

ultimothumb.brightnessTo(0,1,"easeout");

this.brightnessTo(-50,1,"easeout");

_root.img.loadMovie(imageDir+gallery.firstChild.childNodes.childNodes[this.at

ual].childNodes[4].childNodes);

_root.descricaoimg.desc = gallery.firstChild.childNodes.childNodes[this.atual].childNodes[5].childNodes

;

_root.descricaoimg.desc2 = gallery.firstChild.childNodes.childNodes[this.atual].childNodes[6].childNodes

;

 

}

thumbs.onRelease = function(){

ultimothumb = this;

verifica();

 

//habilitando os bts

_root.img.hit.enabled = true;

_root.img.abaproxima.enabled = true;

_root.img.abaanterior.enabled = true;

 

//tornando visiveis as abas

_root.img.abaproxima._visible = true;

_root.img.abaanterior._visible = true;

 

if(this.atual<1){

_root.abaanterior._visible = false;

}

if(this.atual>=1){

_root.abaanterior._visible = true;

}

 

if(this.atual+1==gallery.firstChild.childNodes.childNodes.length){

_root.abaproxima._visible = false;

}else{

_root.abaproxima._visible = true;

}

 

}

//ajustando o fundo do item para o tamanho da foto

thumbs.fundoitem._width = 20;

 

 

 

_root.abaproxima.onPress = function(){

//tornando visiveis as abas

_root.abaanterior._visible = true;

contfotos += 1;

_root.img.loadMovie(imageDir+gallery.firstChild.childNodes.childNodes[contfot

os].childNodes[4].childNodes);

if(contfotos>=i-1){

_root.abaproxima._visible = false;

}

 

}//bt abapromxima

 

//bt abaanterior

_root.abaanterior.onPress = function(){

//tornando visiveis as abas

_root.abaproxima._visible = true;

contfotos -= 1;

_root.img.loadMovie(imageDir+gallery.firstChild.childNodes.childNodes[contfot

os].childNodes[4].childNodes);

if(contfotos==0){

this._visible = false;

}

if(contfotos>=1){

this._visible = true;

}

}//bt abaanterior

 

 

 

 

}//for

 

 

} // End of the function

 

// criando as ações para a barra de rolagem

_root.rolagem.drag.onPress = function():Void{

var xmin = this._y;

var xmax = this._parent.fundo._width - this._width;

var ymin = 0;

var ymax = this._y;

this.startDrag(false,xmin,ymin,xmax,ymax);

 

this.onRelease = this.onReleaseOutside = function():Void{

stopDrag();

delete this.onMouseMove();

}

 

this.onEnterFrame = function():Void{

_root.container._x += (-Math.round((this._x / ymax) * (altura - _root.rolagem._width)) - _root.container._x)/3;

}

}

 

 

//bts troca galeria

 

btshoes.onPress = function(){

 

b=0;

ultimothumb.brightnessTo(0,1,"easeout");

removeMovieClip(thumbs);

parseXml();

this.enabled = false;

_root.abagaleriaatual.galeriaatual = "SHOES";

 

//colocando a posicao de cada bt

btfeminino._x = 433.1;

btshoes._x = 71.7;

btjeanswear._x = 623.1;

 

//ativando outros bts

btfeminino.enabled = true;

btjeanswear.enabled = true;

 

}

 

btfeminino.onPress = function(){

b = 2;

ultimothumb.brightnessTo(0,1,"easeout");

removeMovieClip(thumbs);

parseXml();

this.enabled = false;

_root.abagaleriaatual.galeriaatual = "FEMININO";

 

//colocando a posicao de cada bt

btfeminino._x = 73;

btshoes._x = 453.6;

btjeanswear._x = 623.1;

 

//ativando outros bts

btshoes.enabled = true;

btjeanswear.enabled = true;

}

 

btjeanswear.onPress = function(){

b = 1;

ultimothumb.brightnessTo(0,1,"easeout");

removeMovieClip(thumbs);

parseXml();

this.enabled = false;

_root.abagaleriaatual.galeriaatual = "WEAR";

 

//colocando a posicao de cada bt

btfeminino._x = 635.5;

btshoes._x = 453.6;

btjeanswear._x = 72.2;

 

//ativando outros bts

btshoes.enabled = true;

btfeminino.enabled = true;

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara, aqui você faz um loop para duplicar o moveclip:

 

CODE
for (i=0; i<gallery.firstChild.childNodes.childNodes.length; i++){

 

duplicateMovieClip("item_mc","item_mc"+i,i);

thumbs = _root.container["item_mc"+i];

thumbs._x += (thumbs._width+10)*i;

 

 

qnd você clica no botão para carregar a outra galeria, você precisa usar a msm lógica (um loop), porém usando o "removeMovieClip" no lugar do "duplicateMovieClip"!

então antes de carregar as novas thumbs, precisa passar por este loop que remove os mcs do palco...

 

 

espero ter ajudado, abraços...

Gabriel Cunha

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.