2011-07-03 1 views
0

내 메인 AS에서는 무대에도 불구하고 MovieClip을 컨테이너로 사용하고 있습니다. 다른 AS 파일에서 addChild (글 머리 기호 등)뿐만 아니라 참조로 컨테이너를 가져오고 싶지만 실제로 코드를 작성하는 방법을 모르겠습니다.다른 AS3 파일의 동영상 클립에 대한 참조를 연결하려면 어떻게해야합니까?

현재 (하위) AS에서만 addChild가 작동하는 경우 작동하지만 removeChild에는 문제가 있습니다. 내가 잘하지만 그것을 얻을 경우

답변

2

당신은 메인 클래스의 용기가 있고 다른 클래스에서 액세스 할 .... 몰라, 맞나요?

나는 당신이 필요로하는 당신은 당신의 메인 클래스에 무비 클립에 YOUR_REFERENCE_VAR을 할당해야이

Globals.as // you name it... 

package { 

    public class Globals extends Object { 

     public static var YOUR_REFERENCE_VAR:MovieClip; // This is a static var 

    } 

} 

처럼 보일 것이다 이는 Globals.as 것 같다. 그런 다음 프로젝트의 어느 곳에서나 해당 MovieClip에 액세스 할 수 있습니다.

package { 
    import Globals.as; 
    import flash.display.Sprite; 

    public class GameEngine extends Sprite { 
     public function GameEngine() { 
     addEventListener (Event.ADDED_TO_STAGE, _onAddedToStage); 
     } 

     private function _onAddedToStage (evt:Event):void { 
     removeEventListener (Event.ADDED_TO_STAGE, _onAddedToStage); 

     //When you to access that MovieClip you access it like this 
     Globals.YOUR_REFERENCE_VAR.alpha = 0.5; 
     } 

    }  
} 

지금 당신은 내가 희망이 도움이

var spr:Sprite = new Sprite(); 
Globals.YOUR_REFERENCE_VAR.addChild (spr); 
//Remove the child 
Globals.YOUR_REFERENCE_VAR.removeChild (spr); 

같이하는 AddChild/removehild 사용합니다.

+0

감사합니다.^나를 도와줍니다. –

+0

작은 문제 ^^ "많은 AS 파일에서 addChild를 사용하여 addChild의 순서를 제어 할 수있는 방법은 무엇입니까? T_T –

+0

addChild를 사용할 때 그 자식은 항상 표시 목록의 맨 위에 위치한다는 것을 명심하십시오. 특정 자식의 인덱스를 변경하려면 setChildIndex (yourChild, whatIndex)를 사용하십시오. numChildren을 사용하여 전체 자식 수를 구할 수 있으므로 다음과 같이 특정 자식을 목록 맨 위에 설정할 수 있습니다. setChildIndex (yourChild, numChildren-1); – Dimitris

0

참조로 동영상 클립을 전달할 수 있습니다. 다음은 간단한 예입니다.

관련 문제