我有一个明显加载的位图,并作为子项添加到movielip mc 然后我想稍后加载另一个图像并删除该子项并替换为新的.. 由于某种原因,我的代码不起作用..我不知道我做错了什么
我为名为openBigImage
的缩略图添加了一个监听器
所以基本上新的文件路径和文件名应该替换上一个图像
imgLoader
是一个动画片段,其中包含先前被称为img0, img1
等的varius图像。
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);
}
答案 0 :(得分:0)
老问题,没有解决方案?
function onLoadCompleted2(e: Event):void
{
// ...
trace("replacing image");
var index: int = img.getChildIndex(oldImage);
img.removeChildAt(index);
img.addChildAt(newImage, index);
}
作为替代方案,您可以使用Sprite
,然后清除并用新图片填充它。