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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 21.06.2010, 22:03
AirDecade вне форума Посмотреть профиль Отправить личное сообщение для AirDecade Найти все сообщения от AirDecade
  № 1  
Ответить с цитированием
AirDecade

Регистрация: Jun 2010
Сообщений: 15
По умолчанию Как правильно удалять контейнеры и их содержимое?

Код AS3:
package 
{
	public class SomeClass extends Sprite
	{
		public var SomeVar:Shape;
                public var SomeVar2:Sprite;
                public var SomeVar3:textField;
                public var SomeVar4:Vector.<Sprite>;
//какой-то код...
 
private function someFunction():void
{
SomeVar2 = new Sprite();
SomeVar3 = new textField();
addChild(SomeVar2);
SomeVar2.addChild(SomeVar3);
}
//Ещё код...
	}
 
}
Как парвильно удалять экземпляр такого класса?
Достаточно ли просто приравнять указывающие на него указатели к null?
Надо ли приравнивать к null все SomeVar?

Что будет если приравнять к null переменную SomeVar4? Удалиться ли всё его содержимое (при условии, конечно, что никаких других ссылок на его содержимое нет)?

Надо ли писать removeChild для всего, что было добавлено через addChild?

Про то, что нельзя никому оставлять никаких eventListener знаю.

Старый 21.06.2010, 22:06
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 2  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Цитата:
Сообщение от AirDecade Посмотреть сообщение
Надо ли писать removeChild для всего, что было добавлено через addChild?
Теоретически - да. Если этот контейнер Вы уже не удалили из дисплей-листа.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Создать новую тему Ответ Часовой пояс GMT +4, время: 03:55.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

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

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


 


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


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