Salve.
Io ho una funzione che mi carica delle immagini e tutto schermo molto grandi a cui applico uno smoothing tramite la classe flash.display.BitmapData e a caricamento finito uso una tween che mi fa apparire con un effetto di assolvenza l'immagine
Il problema è che l'effetto di assolvenza viene svolto a SCATTI!Codice PHP:import mx.transitions.*;
import mx.transitions.easing.*;
import flash.display.BitmapData;
MovieClip.prototype.chg_A = function(__Af,duration) {
var object:Object = new Tween(this, "_alpha", Regular.easeOut, this._alpha, __Af, duration, false);
}
function CreaBig(ind,remove)
{
counter++
var target = _level0.caricaSwf.paginaCorrente.img.createEmptyMovieClip("mcEmpty" + counter, counter)
target._alpha = 0
var BigLoader:Object = new MovieClipLoader();
BigLoader.onLoadInit = function(CopiaIMG:MovieClip)
{
var DrawIMG:flash.display.BitmapData = new flash.display.BitmapData (CopiaIMG._width, CopiaIMG._height, true);
DrawIMG.draw(CopiaIMG);
target.attachBitmap(DrawIMG,1,"auto",true);
resizeImage();//richiamo della funzione che mi ridimensiona l'immagine adattandola al browser
target.chg_A(100,10);//richiamo della Tween
}
BigLoader.onLoadStart = function(CopiaIMG:MovieClip)
{
preloadBig = _level0.attachMovie("mcPreloadBig","mcPreloadBig",1);
preloadBig._x = -_level0.cx
preloadBig._y = 580 + _level0.cy - preloadBig._height;
preloadBig._width = Stage.width
preloadBig.barra._xscale = 1;
preloadBig.fri = 20;
preloadBig.dec = .3;
}
BigLoader.onLoadProgress = function(CopiaIMG:MovieClip, BytesLoaded:Number, BytesTotal:Number)
{
preloadBig._x = -_level0.cx;
preloadBig._width = Stage.width;
PercIMG = Math.floor((BytesLoaded/BytesTotal)*100);
preloadBig.barra._xscale -=((preloadBig.barra._xscale - PercIMG)/preloadBig.fri)/preloadBig.dec;
}
BigLoader.onLoadComplete = function(CopiaIMG:MovieClip)
{
removeMovieClip(preloadBig)
target.attachBitmap(DrawIMG,1,"auto",true);*/
}
var DrawIMG = new MovieClipLoader();
if (!remove)
{
DrawIMG.addListener(BigLoader);
DrawIMG.loadClip("/swf/Gallery/"+ ind + ".jpg",target)
}
else
{
DrawIMG.removeListener(BigLoader);
DrawIMG.unloadClip(target);
}
}
CreaBig(0,false)
Se elimino la parte di codice che mi fa lo smoothing il difetto scompare e la tween va come dovrebbe.
Ho provato a usare anche librerie come TweenLite e TweenMax, ma la situazione non migliora. Qualcuno sa darmi un suggerimento...

Rispondi quotando