Comunidad de diseño web y desarrollo en internet online

Precargar este swf

Citar            
MensajeEscrito el 21 Feb 2007 12:45 pm
Amigos, soy un novata en flash, y estoy trabajando con el siguiente carousel http://desarrollo.solinftel.cl/flash/carousel.swf . Lo que quiero hacer es hacerle una precarga una especie de loadbar he intentado don diversos ejemplos que en este sitio aparecen y con el componente progressbar, pero al cargarlo no funcina bien. se replican las imagenes etc. Espero que me puedan dar una buena solucion.



Saludos Francisca

Adjunto el codigo:

Código :

import mx.utils.Delegate;

var numOfItems:Number;
var radiusX:Number = 300;
var radiusY:Number = 75;
var centerX:Number = Stage.width / 2;
var centerY:Number = Stage.height / 2;
var speed:Number = 0.05;
var perspective:Number = 130;
var home:MovieClip = this;

var tooltip:MovieClip = this.attachMovie("tooltip","tooltip",10000);
tooltip._alpha = 0;

var xml:XML = new XML();
xml.ignoreWhite = true;

xml.onLoad = function()
{
   var nodes = this.firstChild.childNodes;
   numOfItems = nodes.length;
   for(var i=0;i<numOfItems;i++)
   {
      var t = home.attachMovie("item","item"+i,i+1);
      t.angle = i * ((Math.PI*2)/numOfItems);
      t.onEnterFrame = mover;
      t.toolText = nodes[i].attributes.tooltip;
      t.icon.inner.loadMovie(nodes[i].attributes.image);
      t.r.inner.loadMovie(nodes[i].attributes.image);
      t.icon.onRollOver = over;
      t.icon.onRollOut = out;
      t.icon.onRelease = released;
   }
}

function over()
{
   home.tooltip.tipText.text = this._parent.toolText;
   home.tooltip._x = this._parent._x;
   home.tooltip._y = this._parent._y - this._parent._height/2;
   home.tooltip.onEnterFrame = Delegate.create(this,moveTip);
   home.tooltip._alpha = 100;
}

function out()
{
   delete home.tooltip.onEnterFrame;
   home.tooltip._alpha = 0;
}

function released()
{
   trace(this._parent.toolText);
}

function moveTip()
{
   home.tooltip._x = this._parent._x;
   home.tooltip._y = this._parent._y - this._parent._height/2;
}

xml.load("icons.xml");

function mover()
{
   this._x = Math.cos(this.angle) * radiusX + centerX;
   this._y = Math.sin(this.angle) * radiusY + centerY;
   var s = (this._y - perspective) /(centerY+radiusY-perspective);
   this._xscale = this._yscale = s*100;
   this.angle += this._parent.speed;
   this.swapDepths(Math.round(this._xscale) + 100);
}

this.onMouseMove = function()
{
   speed = (this._xmouse-centerX)/2500;
}
[/code]

Por zero_gore

0 de clabLevel



 

firefox
Citar            
MensajeEscrito el 21 Feb 2007 09:12 pm
U_U hace mucho tiempo atras .. comece trabajando en Flash ... y llegue al mismo problema que tu .. una precargar .. intentaba de todas las formas posibles y nada .. hasta que un dia conoci a un Clabers .. (como muchas personas aqui te apoyan bastante y dan la mano) pero lo curioso que este amigo me salvo en muchas ocaciones, se llama Juan F .. y bueno . me ayudo con una precarga muy simple que hasta ahora lo uso y no me canso de usarla .. es simple y rapida de aprender ... y dice asi ...

Solo usaras 3 capas, y 2 fotogramas (el segundo es en donde comienza tu contenido y demas)


Ahora en lo personal .. no uso mucho el AS .. asi que en el primer fotograma que se llama "script" pegas el siguiente codigo

Código :

function cargando() {
   var total, cargados, porcentaje;
   total = _root.getBytesTotal();
   cargados = _root.getBytesLoaded();
   porcentaje = Math.floor((cargados*100)/total);
   barra_mc.txt.text = porcentaje + " %";
   barra_mc.gotoAndStop(porcentaje);
   if (cargados == total) {
      clearInterval(hiloPrecarga);
      play();
   }
}
var hiloPrecarga = setInterval(cargando, 1);
stop();


Luego en la otra capa llamada "anim cargador" pones la animacion que sera la de tu cargador ..que aparte de tener la animacion tiene un texto de tipo dinamico con estas caracteristicas.

bueno, regresas al escenario .. y a esa animacion .. con los detalles ya mencionado .. le pones un nombre... (que en la barra de propiedad .. lado izquierda esta) llamado .. barra_mc si te fija en la linea de codigo . aparece varias veces.

Y por ultimo .. en la capa de contenidos .. le pones la informacion de tu site o imagenes .. cualquiera funciona .. y no esta demas .. (obligado) .. otra capa de stop .. q se situe justo encima o debajo .. de tu contenido . para que cuando termine tu precarga no inicie nuevamente .. quedando masomenos de esta forma.


Espero que ahora puedas hacer precargar .. rapidamente .. os dejo aqui la muestra para que vean como me quedo .. aqui
si quieres el fuente .. pos aqui esta. aqui

Por Pley

Claber

2268 de clabLevel

8 tutoriales

 

Lima - Peru

firefox
Citar            
MensajeEscrito el 31 May 2007 10:21 am
Hola, soy nuevo aqui. Perdon por entrometerme en la conversacion, pero, yo estoy haciendo algo parecido y el problema es que la carga de las imagenes se hace desde el XML por lo que el preloader no funciona. Ademas, si el código del carousel se pasa al fotograma 2 no funciona, no se porque...

Salu2,

Por fidoboy

1 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 31 May 2007 10:22 am
Habria alguna forma de hacer que, aunque no se muestre el porcentaje, no se muestre el carousel hasta que TODAS las imegenes esten cargadas?

Salu2

Por fidoboy

1 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 31 May 2007 01:36 pm
para pre-cargar las imagenes:
1) leer el XML
2) para cada imagen, crear un movieclip vacio y cargarlas en este, colocando el clip en forma invisible
3) detectar para cada imagen, cuando se termino de cargar cada una
4) una vez que se cargaron todas, entonces pasar al siguiente frame para comenzar el carrucel.

Por gabynufe

Claber

446 de clabLevel



 

México, D.F.

msie7
Citar            
MensajeEscrito el 04 Nov 2007 09:16 pm
GRACIAS PLEY !!! me has salvado la vida

Por dzine23d

8 de clabLevel



 

safari

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.