[질문] addchild 후 프레임 이동시 사라지는 문제
해지개
3년만에 AS3.0을 다시 하고 있습니다.
자료검색해도 비슷한 CASE가 잘 안나와서 질문을 드립니다.
우선 메인 스테이지에 1프레임 , 2프레임을 만들고
1프레임에 _mc라는 무비클립을 만든 후 코드로 _mc 내부에 다른 무비클립을 여러개 addchild 합니다.
그리고나서 메인스테이지를 2프레임으로 이동하고 다시 1프레임으로 돌아오면 _mc 무비클립안에
addchild 했던 다른 무비클립들이 사라져 있습니다. 메모리체크를 해봤을때 가비지되는것 같아 강제로
지워지는것인가 생각했는데 addchild 하면서 임의의 변수에 대입해놓고 로그를 찍어보니 로그는 찍힙니다.
이걸로 봐서는 지워진것이다라고 판단하기 어려워 정확한 답을 찾기 어렵습니다. 오랜만에 다시 3.0을 하는거라 초보스러운 질문이였습니다.
혹시 아시는분들은 답변 부탁드립니다.
감기조심하세용~
-
무리한
프레임으로 나누어서 작업하셔야 한다면...
꼭 변수에 유무여부
- if( mc != null ) if( contains( mc ) )
이렇게 존재 여부 보여지고 있는지 여부를 체크 하시면 오류 발생을 줄이는데 도움이 됩니다 ㅇㅇ
p.s 저번 정모때 술을 심하게 많이 먹어서 기분 나쁘시진 않으셨죠 ^^;; -
빛나라
건이님께서 런타임시 무비클립들을 생성하고 addchild하였기 때문에 2프레임이 빈프레임이라 한다면 2프레임에서 1프래임으로 이동시 다시 무비클립들을 재생성시켜줘야 합니다.
플래시는 프래임기반으로 랜더링하기 때문에 다음 프레임으로 이동되면 이전프래임의 객체들은 사라지고 해당프레임의 명령을 수행하여 새로(랜더링) 그립니다.
때문에 타임라인의 해당프레임에 이전에 작성하신 코드를 넣으셔서 무비클립 객체를 생성하시거나(이렇게되면 매번 해당프레임 진입시 프래임