Foros del Web » Creando para Internet » Flash y Actionscript »

Problema con galeria

Estas en el tema de Problema con galeria en el foro de Flash y Actionscript en Foros del Web. Que tal chavos, les escribo con esperanza de que puedan ayudarme, ya que tengo una animacion flash que es como una tipo slider o galeria ...
  #1 (permalink)  
Antiguo 05/04/2011, 16:45
 
Fecha de Ingreso: abril-2011
Mensajes: 1
Antigüedad: 13 años
Puntos: 0
Problema con galeria

Que tal chavos, les escribo con esperanza de que puedan ayudarme, ya que tengo una animacion flash que es como una tipo slider o galeria pequeña, tenia un problema de que no me cargaba el xml, llamado: tfile_main.xml, eso ya lo resolvi pero no me carga las imagenes, la animacion se queda cargando.

Proporciono mi codigo:

XML:

<?xml version="1.0" encoding="iso-8859-1"?>
<content>
<!-- general vars -->
<section name="settings">
<item name="textSelectable">true</item>
</section>

<section name="configuration">
<websiteURL1>product.php?id_product=4</websiteURL1>
<websiteURL2>product.php?id_product=5</websiteURL2>
<websiteURL3>product.php?id_product=6</websiteURL3>
<websiteURL4>product.php?id_product=12</websiteURL4>
<websiteURL5>product.php?id_product=15</websiteURL5>


<alpha_bg>0</alpha_bg> <!-- transparency of the substrate under the comment -->
<delta_scr>50</delta_scr> <!-- scroller correction -->
<pic_smoth>false</pic_smoth> <!-- image smoothness (true/false)-->
<pic_viz>3</pic_viz> <!-- amount of the visible images in slider-->
<pic_ext>.png</pic_ext> <!-- big pictures filename extension (.jpg/.png) -->

</section>

</content>


y el action script:

function onFinish(success_boolean, gallery_obj, xml)
{

if (success_boolean)
{
play ();
} // end if
} // End of the function
function loadBitmapSmoothed(url, target)
{
var _loc6 = target.createEmptyMovieClip("bmc", target.getNextHighestDepth());
var _loc2 = new Object();
_loc2.tmc = target;
_loc2.onLoadInit = function (mc)
{
mc._visible = false;
var _loc3 = new flash.display.BitmapData(mc._width, mc._height, true);
this.tmc.attachBitmap(_loc3, this.tmc.getNextHighestDepth(), "auto", true);
_loc3.draw(mc);
};
var _loc4 = new MovieClipLoader();
_loc4.addListener(_loc2);
_loc4.loadClip(url, _loc6);
} // End of the function
function textSelectable(selectedObject)
{
isTextSelected = getSettingsValue(mainObj, "textSelectable", "item");
if (isTextSelected == "true")
{
selectedObject.selectable = true;
} // end if
} // End of the function
function getXmlSection(obj, itemName, sectionName)
{
for (i = 0; obj[itemName][i]; i++)
{
if (obj[itemName][i].name == sectionName)
{

returnedResult = true;
return (i);
break;
} // end if
} // end of for
} // End of the function
function getConfigOption(optionName)
{
var _loc1 = getXmlSection(mainObj, "section", "configuration");
return (mainObj.section[_loc1][optionName][0].value);
} // End of the function
function getCurrentFolder(folderNumber)
{
sectionNum = getXmlSection(mainObj, "section", "pages");
fParams = new Array();
fParams.name = mainObj.section[sectionNum].page[currentPage].gall[0].folder[folderNumber].fName;
fParams.title = mainObj.section[sectionNum].page[currentPage].gall[0].folder[folderNumber].fTitle;

return (fParams);

} // End of the function
function getCurrentFolderImg(folderNumber, imgNumber)
{
sectionNum = getXmlSection(mainObj, "section", "pages");
//trace(sectionNum);
currentPage = _root.link_gall - _root.firstPageFrame;
imgParams = new Array();
imgParams.name = mainObj.section[sectionNum].page[currentPage].gall[0].folder[folderNumber].image[imgNumber].imageUrl;
imgParams.vid_url = mainObj[sectionNum].page[currentPage].gall[0].folder[folderNumber].image[imgNumber].link;
imgParams.size = Number(mainObj.section[sectionNum].page[currentPage].gall[0].folder[folderNumber].image[imgNumber].size);
imgParams.size_width = Number(mainObj.section[sectionNum].page[currentPage].gall[0].folder[folderNumber].image[imgNumber].size_width);
return (imgParams);
} // End of the function
function getGalleryText(textObj, folderNumber, textsNumber, optional)
{
sectionNum = getXmlSection(mainObj, "section", "pages");

textObj.htmlText = mainObj.section[sectionNum].page[currentPage].gall[0].gall_text[0].folder[folderNumber].texts[textsNumber].value;
if (optional == undefined)
{
textSelectable(textObj);

} // end if
} // End of the function
var mainObj = _root.parsed_obj;
_root.y_pic = Number(_root.getConfigOption("delta_pics"));

_root.alph = Number(_root.getConfigOption("alpha_bg"));

_root.delta_scr = Number(_root.getConfigOption("delta_scr"));

_root.smoth = _root.getConfigOption("pic_smoth");
//trace(_root.smoth);
_root.pic_ext = _root.getConfigOption("pic_ext");

firstPageFrame = 1;
_root.link_gall = 1;
_root.linkpage1 = _root.getConfigOption("websiteURL1");
_root.linkpage2 = _root.getConfigOption("websiteURL2");
_root.linkpage3 = _root.getConfigOption("websiteURL3");
_root.linkpage4 = _root.getConfigOption("websiteURL4");
_root.linkpage5 = _root.getConfigOption("websiteURL5");




Yo creo que no esta cargando porque no entra al metodo donde carga el folder donde estan las imagenes.

Espero me puedan ayudar, les agradeceria muchisimo.

Saludos y Felicidades por el sitio.
  #2 (permalink)  
Antiguo 08/04/2011, 21:55
Avatar de Danielfuzz  
Fecha de Ingreso: septiembre-2007
Mensajes: 111
Antigüedad: 16 años, 6 meses
Puntos: 18
Respuesta: Problema con galeria

Hola LECTER88, no voy a leer todo tu códig, no tengo tiempo, pero si ya puedes cargar y leer tu xml, lo siguiente será suficiente para resolver tu problema:

primero cargas tu xml:
Código:
var imgXML:XML=new XML();
imgXML.load('miXML');
imgXML.onLoad=cargaImagenes;
una vez cargado se llamará a la función "cargaImágenes", la forma en la que accede a los nodos de tu xml talvez tengas que cambiarlo dependiendo de la estructura de tu xml:

Código:
function cargaImagenes(){
	imgs=this.firstChild.childNodes;
	num=imgs.length;
	for(var i:Number=0;i<num;i++)
	{
		archivo=imgs[i].attributes.archivo;
		anadirImagen(i,dir+archivo);
	}
}
esta función hace un recorrido por los elementos del xml obteniedo la ruta/nombre del archivo de imagen y acontinuacíon llama a otra función: "anadirImagen"

Código:
function anadirImagen(i:Number,n:String):Void{
	var clip:MovieClip=imgboard_mc.createEmptyMovieClip('img'+i+'_mc',imgboard_mc.getNextHighestDepth());
	var ldr_mcl:MovieClipLoader=new MovieClipLoader();
	var miListener:Object=new Object();
	ldr_mcl.addListener(miListener);
	ldr_mcl.loadClip(n,clip);

miListener.onLoadComplete=function(target_mc:MovieClip){
trace("se cargó la imagen #"+i);
}
}
supongo que puedes deducir que hace esta última función, por si acaso imgboard es un mc donde se cargarán las imágenes.

Saludos, y no olvides el karma.

Etiquetas: galeria
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:05.