1

我正在使用下面的代码循环从我的xml文件中获取变量。我的xml文件包含一个图像路径(http://www.mydomain.com/images/image.jpg),但宽度和高度有点大。

当我设置.width.heightcurrentLoader 我的拇指停止出现。

我尝试了.scaleYand.scaleX但我所有的拇指都没有相同的widthand height

有人可以帮我解决这个问题吗?

private function xmlLoaded(evt:Event):void
{

var currentPosY:Number = 0;
imagesXML = new XML(evt.target.data);
for (var i:uint = 0; i < imagesXML.article.length(); i++)
{

listItem=new itemList();
listItem.x = 25;
listItem.y = currentPosY;
listItem.num=i;
listContainer.loaderMc.addChild(listItem);
currentPosY +=  125;
trace(imagesXML.article[i].photo.toString());
listItem.labelTxt.text = imagesXML.article[i].name.toString();
loadThumbsFromXml(listItem,imagesXML.article[i].photo.toString());
listItem.buttonMode=true;
listItem.mouseChildren=false;
listItem.addEventListener(MouseEvent.CLICK,openPreview);

}

boundsScroll = new flash.geom.Rectangle(480,0,0,455);
setScroll();

}


private function loadThumbsFromXml(target:MovieClip,path:String)
 {          
var currentLoader:Loader=new Loader();
currentLoader.load(new URLRequest(path));           
//currentLoader.width = 115;
//currentLoader.height = 95;
target.thumbLoader.addChild(currentLoader);

}
4

1 回答 1

0

我看到您找到了问题的答案....但是我有另一种方法可以得到它,所以我的方法是在您的库中创建一个新符号作为 MovieClip 并将其链接为 Mc_Holder ...重点是:您的 MovieClip添加了一个 Square (或任何你想要的东西),并且在你添加加载器的 Child 之前,flash 知道它的属性,所以你现在有了宽度和高度;)

我的代码

import flash.display.MovieClip;
import flash.display.Sprite;

var url:String = "images/1.jpg";
var myloader:Loader = new Loader();
var request:URLRequest = new URLRequest(url);
var mc_holder:Sprite = new Mc_Holder();  // from library 
addChild (mc_holder);

myloader.load(request);
mc_holder.addChild(myloader);

mc_holder.width =10;
mc_holder.height =10;

实际上它不是您的“装载机宽度和高度”,但您可以根据宽度和高度调整它并根据需要放置一个新的 Mc_Holder

于 2013-09-10T19:35:08.623 回答