Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 10.03.2011, 15:49
artem.qznetsov вне форума Посмотреть профиль Отправить личное сообщение для artem.qznetsov Найти все сообщения от artem.qznetsov
  № 7  
Ответить с цитированием
artem.qznetsov

Регистрация: Mar 2009
Сообщений: 14
у меня похожая проблема
загружаю данные из XML по разным мувиклипам и добавляю на сцену. по нажатию на кнопку нужно удалить их все.пробовал по вашему методу и удаляется только последний элемент. я новичок в работе с XML, так что не судите строго.)

Код AS1/AS2:
var xmlPath:String = "news.xml";
var settingsXML:XML;
 
var loader = new URLLoader();
loader.load(new URLRequest(xmlPath));
loader.addEventListener(Event.COMPLETE, xmlLoaded);
 
function xmlLoaded(e:Event):void
{
	if ((e.target as URLLoader) != null )
	{
		settingsXML = new XML(loader.data);
		settingsXML.ignoreWhitespace = true;
		createMenu();
	}
 
}
 
function createMenu():void
{
	var newsTitle:NewsTitle;
	var newsDate:NewsDate;
	var btn:Button;
	var i:uint = 0;
 
	for each (var page:XML in settingsXML.pages.page)
	{
		var container:Sprite = new Sprite();
		addChild(container);
		newsTitle = new NewsTitle();
		newsDate = new NewsDate();
		btn = new Button();
 
		newsTitle.newsLabel.text = page.title;
		newsTitle.newsLabel.autoSize = TextFieldAutoSize.LEFT;
 
		newsDate.newsDateLabel.text = page.date;
		newsDate.newsDateLabel.autoSize = TextFieldAutoSize.LEFT;
 
		newsTitle.x = 150;
		newsTitle.y = 50 + i * 40;
 
		newsDate.x = 50;
		newsDate.y = 50 + i * 40;
 
		btn.x = 150;
		btn.y = 50 + i * 40;
		btn.width = newsTitle.width;
		btn.height = newsTitle.height;
		btn.alpha = 0;
		btn.buttonMode = true;
 
		container.addChild(newsTitle);
		container.addChild(newsDate);
		container.addChild(btn);
 
		trace(container.numChildren);
 
		btn.addEventListener(MouseEvent.CLICK, btn_click);
		function btn_click(e:MouseEvent)
		{
			while (container.numChildren > 0)
			{
				container.removeChildAt(0);
			}
			trace(container.numChildren)
		}
 
		i++;
	}
}
трэйс показывает, что у меня 3 экземпляра, но в реальности из ХМЛ их создается 9, по три разных классов и удалить мне нужно их все. я явно что-то недопонимаю


Последний раз редактировалось artem.qznetsov; 10.03.2011 в 16:22.
Создать новую тему   Часовой пояс GMT +4, время: 07:46.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 07:46.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.