Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde,
Sou iniciante em AS e uso o 2 ainda (não me chinguem). Preciso fazer uma galeria de imagens com xml que tenha legenda e thmbs e quando clica em cima abre a foto grande, até aí tudo bem, baixei uma galeria free e adaptei pra o meu uso. Agoora eu preciso fazer paginação, aí que está o problema, eu tenho uma função que exibe os intervalos e coloca eles na tela. Ex: exibe os indices de 0 à8, ou de 9 à 17.
Fiz um botão "next" que teoricamente faria a paginação, mas ele não está chamando a função :T
Acho que me enrolei pra falar, vou colocar o código pra ver se melhora.
import mx.transitions.Tween;
import mx.transitions.easing.*;
var idAtual:Number = new Number();
var space:Number = 10;
var mclImg:MovieClipLoader = new MovieClipLoader();
var lstImg:Object = new Object();
var y_img:Number = 60;
var quebra_linha:Number = 0;
var stage_w:Number = 925;
var stage_y:Number = 346;
var pagina:Number = 1;
///////////////////////
var xml: XML = new XML ();
xml.load("portifolio.xml");
xml.ignoreWhite = true;
System.useCodepage = true;
function carrega (){
xml.onLoad = function() {
fn = xml.firstChild.childNodes;
total = fn.length;
//paginacao
var total_fotos:Number = total - 1;
var result_pagina:Number = 9;
var total_paginas:Number = Math.ceil(total_fotos/result_pagina);
trace("total_paginas"+total_paginas);
var min:Number = ((pagina * result_pagina) - result_pagina);
trace("pagina="+pagina+",total de fotos="+total_fotos+",total de paginas="+total_paginas+", minimo="+min);
for (var j:Number = min; j < (result_pagina + min) && j <= total_fotos; j++) {
var btn:MovieClip = holder_portifolio.attachMovie("miniaturas", "miniatura"+j, j);
quebra_linha = quebra_linha + 1;
trace(quebra_linha);
if(j == 0){
quebra_linha = 0;
}else if (j% 3 == 0){
y_img = y_img +70;
quebra_linha = 0;
}
btn._y= y_img;
btn._x = 80 + (btn._width+space)*quebra_linha;
btn.id = j;
btn.onRelease = function() {
loadImg(this.id);
};
mclThumb.loadClip(fn[j].attributes.mini,btn.foto);
holder_portifolio["miniatura"+j].texto_pt.text = xml.childNodes[0].childNodes[j].attributes.legenda ;
holder_portifolio["miniatura"+j].load_thumb.loadMovie(xml.childNodes[0].childNodes[j].attributes.mini) ;
}
};
}
function loadImg(id:Number) {
idAtual = id;
mclImg.loadClip(fn[id].attributes.imagem,holder_img);
}
lstImg.onLoadInit = function(holder_img:MovieClip) {
holder_img._x = (stage_w-holder_img._width)/2;
holder_img._y = (stage_y-holder_img._height)/2;
holder_img.onRelease = function (){
mclImg.unloadClip(holder_img);
}
}
mclImg.addListener(lstImg);
carrega();
bo_next.onRelease = function(){
if (pagina <= total_paginas){
pagina = pagina + 1;
trace ("pagina="+pagina);
carrega();
}
}
Help me?
Carregando comentários...