PDA

Просмотр полной версии : Проблемы с removeChildAt()


Anig
20.05.2010, 00:54
Здравствуйте. Помогите пожалуйста разобраться. Слышали ли вы о проблемах при работе с функцией removeChildAt(), может есть баги какие-то... По-моему там не всегда хорошо все удаляется. То удаляется, то нет...Помогите пожалуйста...:(

Zebestov
20.05.2010, 01:12
тут где-то лежали кости людей, которые ждали первого случая "нехорошего" удаления по removeChildAt(). так и не дождались.
не ну была пара ложных тревог... по мелочам... пытались там например удалить 5-го детеныша из 3-х. но так чтобы серьезный прецедент — не.

Anig
20.05.2010, 01:42
Не хочу превращаться в кости:( Так что начну искать другие причины проблемы...:)

Zebestov
20.05.2010, 01:56
о! так проблема есть?! :) просто текст типо:
Слышали ли вы о проблемах при работе с функцией removeChildAt(), может есть баги какие-то... По-моему там не всегда хорошо все удаляется.
никак нельзя было расценить как проблему, с которой тебе нужна помощь.
выкладывай. поможем.

Anig
20.05.2010, 02:36
Спасибо:) Ну вот лодятся под клип обьекты, потом лодится он сам(то бишь mclip)
после надо удалить тот обьект, что непосредственно загрузился под него. Вот примерный код. Самое обидное, что то работает, то нет....
ch:int =mclip.numChildren;
mclip.removeChildAt(ch-2); Никаких exeption, просто не выгружает, совсем не пойму....

nOobCrafter
20.05.2010, 02:52
а трейс забанен?)
trace(ch-2);
+ добавить проверку на отрицательное значение на всякий...

Anig
20.05.2010, 03:00
делаю трейс-неотрицательно....., тут меня другая мысль гложет: т.к. версия рабочая -то лодю иногда повторяющиеся картинки( ну тот же jpg) может в этом проблема? Для него повторяющиеся лоуды, как один?
PS нет, по-моему((

Zebestov
20.05.2010, 03:25
а addChild() каждого Loader-а делается сразу, или по COMPLETE/INIT?

Anig
20.05.2010, 10:31
по COMPLETE/INIT по-моему, код не мой-доделываю...(( Но перед удалением делаю trace количества детей -и после remove оно остается такое же

Zebestov
20.05.2010, 13:40
это все испорченный телефон. нужен код. того, как добавляются, и того, как удаляются.

Anig
20.05.2010, 13:50
даа, я понимаю...

Добавлено через 4 минуты
код запутан, состоит из 1000 классов, большая часть из которых-просто переименование существующего....Такое чувство, что тот кто писал поклялся, что его никто кроме него не поймет))) Пороюсь пока, если что- напишу опять сюда. Просто хотелось (надеялось))), что есть быстрое(универсальное) решение вопроса

Добавлено через 9 минут
"а addChild() каждого Loader-а делается сразу, или по COMPLETE/INIT?"- можно спросить в чем будет разица?

Zebestov
20.05.2010, 14:06
ну если ты удаляешь элемент, который уже поставлен на загрузку, но не добавлен в контейнер до ее окончания, то ты по индексу удаляешь не тот элемент, который ожидаешь. но все-равно были бы какие-то визуальные изменения. или ошибки. просто другой вариант событий.
но это все "вода". без кода это все флейм =)

Anig
21.05.2010, 01:13
Может ли помочь этот факт:
делаю trace при удалении
так вот, когда удаляет, пишет что детенышем был Bitmap, а когда топчется на месте и никого не удаляет-пишет что на этом индексе детенышем был MovieClip....

i.o.
21.05.2010, 02:13
Возможно, что вы вызываете removeChild() у кастомного класса. И метод removeChild() у него переопределен, где идет проверка, что можно удалить, а что нельзя..
Это так, предположение))

Anig
21.05.2010, 03:48
Хорошее предположение, но нет, вроде нет переопределения этого метода...

Добавлено через 7 минут
У меня плеер 9, может баг какой, может 10 надо?

Добавлено через 10 часов 35 минут
Медленно, но верно схожу сума.....1. Может ли быть проблема с кешированием повторяющихся жпегов? 2.Есть ли какое-то негласное ограничение на число детей у плеера? Проблема возникает при загрузке друг на друга более 3х детей. 3.Порядок ведь у этих детенышей такой как они были загружены? 4. Если ошибка кода, то почему при малом количестве детей все работает? Помогите пожалуйста