2012-10-27 8 views
3

코딩과 AS3에 익숙하지 않습니다. AS3을 사용하여 무대에 물건을 추가하는 방법을 읽고 addChild 메소드에 대해 배웠습니다. 더 많이 읽으면서 나는 그것을 사용하는 다른 방법이 있다는 것을 알았다. 나는 또한 어떤 길은 다른 길보다 낫다는 것을 읽고, 어떤 길은 전혀 좋지 않고 피하는 것이 더 바람직하다는 것을 읽는다.addChild의 올바른 사용

나는 이러한 소스를 신뢰하지 않습니다. 코딩 초보자로서 나는 StackOverflow 도움을 요청했다. addChild의 무거운 프로젝트를 시작하려고하는데 올바른 구현으로 시작하고 싶습니다. 나는 당신을 신뢰한다. 그래서 나는 당신에게 이것을 묻는다. addChild의 올바른 사용법은 무엇인가?

무대에 물건을 추가하고 싶지만 무언가를 추가하지 않고 무대에 직접 추가하는 것은 좋지 않습니다.

stage.addChild() 
this.addChild() 
addChild() 

다른 방법이 있습니까? 어느 것을 사용해야합니까?

감사합니다. :)

답변

3

표시 목록 계층 구조의 모든 표시 객체에 대한 최상위 컨테이너는 런타임에로드되는 SWF 파일의 수와 관계없이 Stage 하나입니다. 따라서 일반적으로 스테이지에 객체를 직접 추가해서는 안됩니다. 스테이지에 포함해야하는 유일한 객체는 루트 객체입니다.

일반적으로, 당신은 사용하지 말아야하십시오 DisplayObject에 표시 목록을 추가 stage.addChild()

DisplayObjectContainer의 범위 내에서 수행되어야한다.

각 SWF 파일에는 표시 객체를 확장하는 SWF 파일의 기본 클래스라는 연결된 ActionScript 클래스가 있습니다. 이 클래스 또는 계층 내의 모든 하위에서 addChild()으로 전화 할 수 있습니다.

다음은 동일하며 현재 표시 객체 컨테이너 범위 내에 자식을 추가합니다.

this.addChild() 
addChild() 

this 키워드는 범위를 정의합니다. 그러나, 일반적으로 암시 적이다.

addChild()를 통해 추가 된 표시 객체가 다른 모든 자식의 앞 (맨 위)에 추가되는 동안 자식을 특정 인덱스 위치에 추가하려면 addChildAt() 메서드를 사용합니다.

참고 :

+0

내가 this.addChild은() 내가 무대에 요소를 추가하고, 전역 범위에서 사용하는 경우? – Rob

+1

아니요, [전역 변수 범위] (http://help.adobe.com/en_US/ActionScript/3.0_ProgrammingAS3/WS5b3ccc516d4fbf351e63e3d118a9b90204-7f9d.html#WS5b3ccc516d4fbf351e63e3d118a9b90204-7f8c)가 있지만 해당 상황에서 마우스 포인터로 'this'포인터가 없습니다. . –

+0

더 많은 것이 있어야합니다. 지금 나는'ViewStack'에'addChild()'를 시도하고 있는데 아무 효과가없는 것 같습니다. 어쩌면 SDK? (Flex 3.5) – Opux