2011-05-04 2 views
0

나는 다음 ActionScript 3.0 클래스있다 :플렉스 4 스프라이트 비주얼 요소 문제

<s:Application name="Spark_SpriteVisualElement_addChild_test" 
      xmlns:fx="http://ns.adobe.com/mxml/2009" 
      xmlns:s="library://ns.adobe.com/flex/spark" 
      xmlns:mx="library://ns.adobe.com/flex/mx" 
      initialize="init();"> 

<fx:Script> 
    <![CDATA[ 
     import com.ShopRaider; 
     private var game:ShopRaider; 

     private function init():void 
     { 
      game = new ShopRaider(); 
      con.addChild(game); 
     } 
    ]]> 
</fx:Script> 

<s:SpriteVisualElement id="con" width="640" height="480" ></s:SpriteVisualElement> 

: 나는 같은 .mxml 파일 응용 프로그램을

public class ShopRaider extends Sprite { 
public function ShopRaider() { 
    // some code 
} 

}

이 응용 프로그램을 실행할 때 다음 오류가 발생합니다.

TypeError: Error #1009: Cannot access a property or method of a null object reference. 
at spark.components::Application/initialize()[E:\dev\4.0.0\frameworks\projects\spark\src\spark\components\Application.as:907] 
at ShopRaider/initialize() 
at spark.core::SpriteVisualElement/http://www.adobe.com/2006/flex/mx/internal::childAdded()[E:\dev\4.0.0\frameworks\projects\spark\src\spark\core\SpriteVisualElement.as:2053] 
at spark.core::SpriteVisualElement/addChild()[E:\dev\4.0.0\frameworks\projects\spark\src\spark\core\SpriteVisualElement.as:2010] 
at ShopRaider/init()[C:\Users\ltadmin\Adobe Flash Builder 4\ShopRaider\src\ShopRaider.mxml:16] 
at ShopRaider/___ShopRaider_Application1_initialize()[C:\Users\ltadmin\Adobe Flash Builder 4\ShopRaider\src\ShopRaider.mxml:6] 
at flash.events::EventDispatcher/dispatchEventFunction() 
at flash.events::EventDispatcher/dispatchEvent() 
at mx.core::UIComponent/dispatchEvent()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\core\UIComponent.as:12266] 
at mx.core::UIComponent/set processedDescriptors()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\core\UIComponent.as:1630] 
at mx.core::UIComponent/initializationComplete()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\core\UIComponent.as:7280] 
at mx.core::UIComponent/initialize()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\core\UIComponent.as:7259] 
at spark.components::Application/initialize()[E:\dev\4.0.0\frameworks\projects\spark\src\spark\components\Application.as:916] 
at ShopRaider/initialize() 
at spark.core::SpriteVisualElement/http://www.adobe.com/2006/flex/mx/internal::childAdded()[E:\dev\4.0.0\frameworks\projects\spark\src\spark\core\SpriteVisualElement.as:2053] 
at spark.core::SpriteVisualElement/addChild()[E:\dev\4.0.0\frameworks\projects\spark\src\spark\core\SpriteVisualElement.as:2010] 
at ShopRaider/init()[C:\Users\ltadmin\Adobe Flash Builder 4\ShopRaider\src\ShopRaider.mxml:16] 
at ShopRaider/___ShopRaider_Application1_initialize()[C:\Users\ltadmin\Adobe Flash Builder 4\ShopRaider\src\ShopRaider.mxml:6] 
at flash.events::EventDispatcher/dispatchEventFunction() 
at flash.events::EventDispatcher/dispatchEvent() 
at mx.core::UIComponent/dispatchEvent()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\core\UIComponent.as:12266] 
at mx.core::UIComponent/set processedDescriptors()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\core\UIComponent.as:1630] 
at mx.core::UIComponent/initializationComplete()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\core\UIComponent.as:7280] 
at mx.core::UIComponent/initialize()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\core\UIComponent.as:7259] 
at spark.components::Application/initialize()[E:\dev\4.0.0\frameworks\projects\spark\src\spark\components\Application.as:916] 
at ShopRaider/initialize() 
at mx.managers.systemClasses::ChildManager/childAdded()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\managers\systemClasses\ChildManager.as:189] 
at mx.managers.systemClasses::ChildManager/initializeTopLevelWindow()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\managers\systemClasses\ChildManager.as:341] 
at mx.managers::SystemManager/initializeTopLevelWindow()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\managers\SystemManager.as:2810] 
at mx.managers::SystemManager/http://www.adobe.com/2006/flex/mx/internal::kickOff()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\managers\SystemManager.as:2637] 
at mx.managers::SystemManager/http://www.adobe.com/2006/flex/mx/internal::preloader_completeHandler()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\managers\SystemManager.as:2539] 
at flash.events::EventDispatcher/dispatchEventFunction() 
at flash.events::EventDispatcher/dispatchEvent() 
at mx.preloaders::Preloader/timerHandler()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\preloaders\Preloader.as:515] 
at flash.utils::Timer/_timerDispatch() 
at flash.utils::Timer/tick() 

어디로 가고 있습니까? 그것은 가장 기본적인 예제 인 것처럼 보이지만 나는 붙어 있습니다. 도와주세요 !!

PS : 나는

답변

0

사용 creationComplete="init();"을 FLEX 4, 플래시 플레이어 10, 및 플래시 빌더 사전에 4

감사합니다 :) 사용하고 대신 initialize="init();"

+0

나는 당신의 제안을 시도했다. 그러나 이번에는 : 'TypeError : Error # 1009 : null 개체 참조의 속성이나 메서드에 액세스 할 수 없습니다. spark.components.supportClasses :: SkinnableComponent/commitProperties() [E : \ dev \ 4.0.0 \ frameworks \ projects \ spark \ src \ spark \ components \ supportClasses \ SkinnableComponent.as : 427] \t 스파크에서. components :: Application/commitProperties() [mx.core :: UIComponent/validateProperties()의 \t에서 [E : \ dev \ 4.0.0 \ frameworks \ projects \ spark \ src \ spark \ 구성 요소 \ Application.as : E : \ dev \ 4.0.0 \ frameworks \ projects \ framework \ src \ mx \ core \ UIComponent.as : 7772] \t ...' – codemaniac

0
아마도

당신은 당신의 '죄수의 인스턴스를하지 않은 '개체. 이 라인

<s:SpriteVisualElement id="con" width="640" height="480" ></s:SpriteVisualElement> 

<s:Application> </s:Application> 괄호로 둘러싸인되지 않도록 할 수 있습니까?