1
我正在创建一个使用XML创建按钮列表的项目。当你按下其中一个按钮时,会加载一个新的xml,它可以创建“子按钮”。在AS3中使用MouseEvent.CLICK事件侦听器卸载xml文件并加载新的xml文件
随着我写的代码,除了当我按下顶级按钮(第一级按钮)时,它会加载xml,它创建子按钮并加载一些文本数据,但当我按另一个顶部它加载新的XML,创建子按钮,加载不同的文本数据,.......但是,旧的子按钮也存在....
我希望能够删除旧的子按钮。我GOOGLE了,但我无法得到任何帮助:/任何帮助将不胜感激。
代码从创建顶级按钮开始,并将CLICK MouseEvent分配给这些按钮。
function onButtonClick(me:MouseEvent):void {
xmlLoader.load(new URLRequest(bookElement.xmllink.toString()));
xmlLoader.addEventListener(Event.COMPLETE, onSubXmlLoad);
}
function onSubXmlLoad(e:Event):void {
trace("xml loaded");
new_sub_xml = new XML(sub_xmlLoader.data);
var Books:XMLList = new_sub_xml.name.books;
var len:int = Books.length();
trace(len + " Books");
for (var i:int = 0; i < len; i++) {
sub_btn = new SubFeatureButton();
sub_btn.x = 10 + i * 50;
sub_btn.y = 90;
addChild(sub_btn);
sub_btn.name = "sub_btn" + i;
sub_btn.buttonMode = true;
trace(sub_btn + i);
}
}
谢谢!有效。我知道我必须在创建新的子按钮之前删除旧的子按钮,我只是不知道如何到达那里。 除了我必须将'subNav.childNum'更改为'subNav.numChildren'以外,它完美地工作。再次感谢你的帮助。 – 2013-03-19 05:13:52