Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Как с родителя удалить все чилды? (http://www.flasher.ru/forum/showthread.php?t=117611)

vcj 31.10.2008 12:48

Как с родителя удалить все чилды?
 
Subj...

smilenka 31.10.2008 13:11

Как один из вариантов:

Код:

var maxChildIndex:int = graphicContext.numChildren - 1 ;
for( var childIndex:int = maxChildIndex; childIndex >= 0 ; childIndex-- )
{
        graphicContext.removeChildAt( childIndex ) ;
}


etc 31.10.2008 14:33

Код:

var l:uint = super.numChildren;
while (l--) super.removeChildAt(l);


wvxvw 31.10.2008 15:22

Код:

while (numChildren) removeChildAt(0);
:p

etc 31.10.2008 15:43

Цитата:

Сообщение от wvxvw (Сообщение 774066)
Код:

while (numChildren) removeChildAt(0);
:p

Это самый медленный код.

wvxvw 31.10.2008 16:09

Зато самый короткий %)

Волгоградец 31.10.2008 16:17

Почему медленный?
Код:

var s:Sprite = new Sprite();
for (var i:uint = 0; i < 10000; i ++) {
        var h:Sprite = new Sprite();
        s.addChild(h);
}
                       
var t1:Number = getTimer();               
var l:uint = s.numChildren;
while (l--) s.removeChildAt(l);               
var t2:Number = getTimer();               
Debugger.trace(t2 - t1);//1575
                       
//***********************************
                       
var b:Sprite = new Sprite();
for (var j:uint = 0; j < 10000; j ++) {
        var m:Sprite = new Sprite();
        b.addChild(m);
}
                       
var t3:Number = getTimer();               
while (b.numChildren) b.removeChildAt(0);               
var t4:Number = getTimer();
                                       
Debugger.trace(t4 - t3);//761


CrazyFlasher 31.10.2008 17:41

я обычно создаю массив, куда забиваю чайлдов, которые в дальнейшем должны быть удалены

BlooDHounD 31.10.2008 21:11

моё представление о мире разрушено. только индусы могли развернуть массив.

etc 31.10.2008 23:18

Мда, зато геттеры быстрые.
Даже в голову не приходило проверить, что очевидно более быстрый код окажется медленнее.


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

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