그래서 2 개의 외부 클래스가있는이 사진 갤러리가 있습니다.이 코드는 클래스를 호출하여 갤러리를 가져 와서 작동시키는 타임 라인 코드입니다. 지금까지 좋은 점은이 사진 갤러리를 미디어 프레젠테이션이나 웹 사이트 또는 1 층 이상의 무언가에 넣으려고 할 때 문제가 시작된다는 것입니다. 갤러리가 호출 된 후에도 계속 남아서 갤러리로 돌아올 때마다 갤러리가 더 늘어납니다. 코드와 함께 그 프레임.AS3.0에서 다른 버튼을 클릭하면 갤러리 호출을 제거하는 방법은 무엇입니까?
그래서 만약 프레임 번호 13에 im이 없거나 클래스를 호출하지 않으면 갤러리를 제거하라는 간단한 코드를 추가 할 수 있는지 궁금합니다. "removeChild"시도, 문제의 절반을 해결, 그것은 갤러리를 제거하지만 적어도 증가 효과를 막지 못했습니다.
내가 필요한 것은 다른 프레임/페이지로 이동할 때 갤러리를 제거하는 방법입니다. 누군가 나를 도울 수 있습니까? imgLoader
경우
import flashfold.as3.*;
var imgLoader:ImageLoader;
var thumbsToLoad:Array=[];
var menuColumnItems:int=6;
var menuTotItems:int=30;
var menuThumbs:Vector.<Bitmap>=new Vector.<Bitmap>();
var menuBigPics:Vector.<String>=new Vector.<String>();
var menu:SpinnerMenu;
btnSpin.visible=false;
errorBox.wordWrap=true;
errorBox.visible=true;
errorBox.text="Loading thumbnails...";
populatePics();
prepImgs(thumbsToLoad);
function prepImgs(a:Array):void {
imgLoader=new ImageLoader();
imgLoader.addEventListener(ImageLoader.LOAD_ERROR,errorLoading);
imgLoader.addEventListener(ImageLoader.IMGS_LOADED,allLoaded);
imgLoader.loadImgs(a);
}
function errorLoading(e:Event):void {
errorBox.visible=true;
errorBox.text="There has been an error loading images. The server may be busy.";
}
function allLoaded(e:Event):void {
errorBox.visible=false;
initApp();
}
function initApp():void {
var i:int;
for (i=0; i<menuTotItems; i++) {
menuThumbs[i]=imgLoader.bitmapsArray[i];
}
menu=new SpinnerMenu(menuThumbs,menuBigPics,menuColumnItems);
this.addChild(menu);
trace("oi");
menu.x=72;
menu.y=50;
menu.menuInfoBox.x=160;
menu.menuInfoBox.y=90;
this.transform.perspectiveProjection.fieldOfView=70;
this.transform.perspectiveProjection.projectionCenter=new
Point(menu.x+menu.menuWidth/2,menu.y+menu.menuHeight/2);
btnSpin.visible=true;
//We load the initial image.
menu.loadInitial();
}
function populatePics():void {
var i:int;
for (i=1; i<=menuTotItems; i++) {
thumbsToLoad[i-1]="small"+String(i)+".jpg";
}
for (i=1; i<=menuTotItems; i++) {
menuBigPics[i-1]="pic"+String(i)+".jpg";
trace('ok');
btnSpin.addEventListener(MouseEvent.CLICK, spinMenu);
function spinMenu(e:MouseEvent):void {
var r:Number=Math.random();
if (r<0.5) {
menu.doSpin("right");
} else {
menu.doSpin("left");
}
}
}
}
은 삭제하고자하는 갤러리의 'imgLoader'입니까? – whodeee