2014-08-27 86 views
0

我已經從Red5服務器代碼庫下載了loadtest演示的源代碼並嘗試在本地設置它。我正在使用FlashDevelop來設置Flash客戶端。在構建階段,我意識到,這段代碼是很久以前寫的,因此我使用的大多數最新的SDK和jar都需要被舊版本所取代。.mxml和.as問題:錯誤#1009:無法訪問空對象引用的屬性或方法

我現在可以在Eclipse中成功構建代碼庫並將該項目導入爲FlashDevelop中的Flash(AS3)項目。但是,當我在調試模式下運行它時,出現很多Error #1009: Cannot access a property or method of a null object reference錯誤。當我用調試器追溯時,我發現了所有在.mxml文件中創建的對象,當它們在.as文件中使用時,我收到了這個錯誤。

我是ActionScript/Flex的新手。我在網上做了很多關於這個錯誤的文章。我發現的是,當一個對象在被初始化之前被使用時會發生這種情況。但是,在這個項目中一切似乎都很好。

所以,我懷疑它可以是任何類型的Flash Player的版本問題或其他。這裏我列出了一些遇到錯誤#1009行:

錯誤行1(requestDelay投擲的錯誤#1009):

function.as:log('Load delay: '+requestDelay.text);

loadtest.mxml:

<mx:Label text="Request delay" fontWeight="bold"/> 
<mx:TextInput id="requestDelay" text="1" width="30" toolTip="For a minimal delay input .1"/> 

錯誤行2(useAMF3投擲錯誤#1009):

function.as:viewer.setEncoding(useAMF3.selected === true ? 3 : 0);

loadtest.mxml:<mx:CheckBox label="AMF3" fontWeight="bold" id="useAMF3" x="10" y="40" color="#000000"/>

在我的測試中,我評論的每一行那裏我得到這個錯誤,並向前邁進。這樣我遇到了多個這樣的錯誤。

如果有幫助,請告訴我是否需要在此提供function.asloadtest.mxml文件。我不想混淆消息。因此,現在不發佈它。

任何幫助表示讚賞!謝謝!

+0

柔性管理對象的創建在每個需要的基礎上,在MXML沒有按聲明它們這並不意味着當你嘗試以as3代碼訪問它們時,這些對象就會存在。 – BotMaster 2014-08-28 19:53:30

+0

當我嘗試在as3代碼中訪問它們時,如何確保這些聲明對象存在? – kajarigd 2014-08-28 19:57:16

回答

0

當一個組件創建需要SOEM時間,直到準備就緒,使用creationComplete事件並添加處理程序做你的工作,

相關問題