Flash AS3 - Как заменить / поменять изображение внутри фрагмента ролика? - PullRequest
1 голос
/ 30 сентября 2010

У меня есть битмап, загруженный и добавленный как дочерний элемент в movielip mc затем я хочу загрузить другое изображение позже и удалить thatchild и заменить на новое .. по какой-то причине мой код не работает .. я не знаю, что я делаю неправильно

я добавляю слушателя к миниатюре с именем openBigImage поэтому в основном новый путь к файлу и имя файла должны заменить предыдущее изображение

imgLoader - это мувиклип, содержащий изображение вариуса, ранее объявленное как img0, img1 и т.

theThumbs содержит имена файлов изображений в виде строки

мой вопрос: должен img.addChildAt (bitmapContent, 0); работает как функция подкачки? Я могу удалить IMG ребенка, но я не могу заменить его ...

function openBigImage(e) 
{
    var e = e.target;
    var i = e.parent.name1;
    var z = e.parent.name2;
    var tu = theThumbs[i][z];   
    var img =  imgLoader.getChildByName("img" + i);
    var newimg:Loader = new Loader();
    var fileRequest:URLRequest = new URLRequest(tu);    
    newimg.load(fileRequest);
    newimg.name = i;
    newimg.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoadCompleted2);
    img.removeChildAt(0);
}
function onLoadCompleted2(e:Event):void {
    var bitmapContent:Bitmap = Bitmap( e.target.content );
    bitmapContent.smoothing = true;
    var i = e.target.loader.name;
    var img =  imgLoader.getChildByName("img" + i); 
    trace("img" + i)
    img.addChildAt(bitmapContent,0);
}

1 Ответ

0 голосов
/ 12 июня 2014

Старый вопрос и нет решения?

function onLoadCompleted2(e: Event):void
{
    // ...
    trace("replacing image");
    var index: int = img.getChildIndex(oldImage);
    img.removeChildAt(index);
    img.addChildAt(newImage, index);
}

В качестве альтернативы вы можете использовать Sprite, а затем просто очистить и заполнить его новым изображением.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...