0

spirteの画像を置き換えたいのですが。

しかしその前に、画像がディレクトリに存在するかどうかを確認したいと思います。それを行う方法はありますか?

newImage = new ImageLoader(dir + temChild.category + '/' + temChild.productUrl + '.png', {
                                                                    container : temChild,
                                                                    height : 80,
                                                                    width : 80,
                                                                    scaleMode : 'proportionalInside',
                                                                    onComplete : onColorImageLoad, 
                                                                    centerRegistration : true,
                                                                    noCache: true,
                                                                    autoDispose : true
                                                                  });
4

2 に答える 2

2

ImageLoader で 1 つの画像を読み込む場合は、コールバック (イベント) を使用できます。 aoutocomplete のために ImageLoaderVars クラスを使用します

var loaderVars:ImageLoaderVars = new ImageLoaderVars();
loaderVars.container=temChild;
loaderVars.height=80;
loaderVars.width=80;
loaderVars.scaleMode='proportionalInside';
loaderVars.centerRegistration=true;
loaderVars.noCache=true;
loaderVars.autoDispose=true;
loaderVars.onComplete=temChild;
loaderVars.onComplete=onColorImageLoad;

//lets watch for errors if we don't have file on the server or something else
loaderVars.onError=onErrorCallback;
loaderVars.onFail=onFailCallback;                                                        

newImage = new ImageLoader(dir+temChild.category+'/'+temChild.productUrl+'.png',
loaderVars);

private function onFailCallback(event:LoaderEvent):void
{
 //do something if you want here
}

private function onErrorCallback(event:LoaderEvent):void
{
 //do something if you want here
}

1 つの LoaderMax に多数の ImageLoder がある場合、失敗したローダーから何を求めるかを決定します。また、LoaderMax イベントもあります: childFail、ioError、securityError。

于 2013-01-14T05:19:58.017 に答える
1

プロパティnameを に追加して、メソッドloaderVarsを使用してみてください。LoaderMax.getContent

import com.greensock.loading.ImageLoader;
import com.greensock.loading.LoaderMax;
import com.greensock.events.LoaderEvent;

var loaderVars:Object = {
    container : this,
    height : 80,
    width : 80,
    scaleMode : 'proportionalInside',
    onComplete : onColorImageLoad, 
    centerRegistration : true,
    noCache: true,
    autoDispose : true,
    name: 'photo1' // Put your image id here
};

var newImage:ImageLoader = new ImageLoader('http://images.apple.com/es/home/images/hero_ipad_retina.jpg', loaderVars);

// Loads if photo1 has not been loaded
if (LoaderMax.getContent('photo1') && !LoaderMax.getContent('photo1').rawContent)
{
    newImage.load();
}

function onColorImageLoad (event:LoaderEvent):void 
{
    trace(event);
}
于 2013-01-14T12:52:28.000 に答える