2012-07-05 443 views
0

我一直在試圖學習flex/flash編程,並且正在開發一個項目,我需要從一個字符串動態地在flex中填充一個微調列表。我有一個函數,使用「split」分隔字符串,現在我需要填充數組列表。我現在一直在與這個愚蠢的大人一起工作,可以在任何地方找到幫助。我不斷收到以下錯誤:無法訪問空對象引用的屬性或方法Flex

TypeError:錯誤#1009:無法訪問空對象引用的屬性或方法。 的意見::老生常談/ initApp()[/用戶/ twing207 /文檔/使用Adobe Flash Builder的4.6/AmericanTaxi/src目錄/視圖/ CommonPlaces.mxml:30]

我的代碼是在這裏:

<fx:Script> 
    <![CDATA[ 
     import mx.collections.ArrayList; 
     import spark.events.IndexChangeEvent; 

     var Arr1:Array; 
     var Arr2:Array; 
     var Arr3:Array; 

     [Bindable] 
     public var CommonPlacesArray:ArrayList; 

     var CommonPlacesData:String = new String("2133664:American Taxi Dispatch, Inc:Mount Prospect:834 E RAND RD|2133665:Walmart:Mount Prospect:930 Mount Prospect Plaza|2228885:Garage:Des Plaines:1141 Lee St|2228886:Asian Island:Palatine:1202 E Dundee Rd|2229464:Kohl's:Arlington Heights:700-856 W Dundee Rd|"); 
     var CurrentSelect:String = new String(); 

     private function initApp():void { 

      Arr1 = CommonPlacesData.split("|"); 
      var arrLength:Number = new Number(Arr1.length); 

      for (var i:Number = 0; i < (arrLength - 1); i++) { 
       CurrentSelect = new String(Arr1[i]); 
       Arr2 = CurrentSelect.split(":"); 

     //THE LINE BELOW IS WHERE IT STOPS: 
       CommonPlacesArray.addItem(Arr2[1]); 
      } 

     } 

它似乎不喜歡「CommonPlacesArray.addItem」這一行。任何幫助或正確方向的一點都會很棒。先謝謝了!

在另一方面,我也遇到了錯誤:「未定義的屬性的訪問:數據」在以下方面:

在這裏,另一種觀點認爲我對data.UserCommonReturnData值設置爲一個字符串。

function LoginLoaded (e:Event):void { 
         trace(e.target.data); 
         var ServerReturn:String; 
         ServerReturn = new String(e.target.data); 
         data.UserCommonReturnData = ServerReturn; 
         navigator.pushView(CommonPlaces, data); 
        } 

在這裏,我試圖把它拉回來:

var CommonPlacesData:String = new String(); 
      var CurrentSelect:String = new String(); 

//下一行給出了錯誤: CommonPlacesData = data.UserCommonReturnData;

任何想法??

回答

2

你永遠不會構造CommonPlacesArray,你只需聲明它。

var CommonPlacesArray:ArrayList = new ArrayList(); 

如果檢查Array List API你也可以清楚地看到它有一個接受一個數組,這意味着你可以將數據複製到它,而無需在它自己的迭代構造。

+0

哇,我應該知道這很簡單和愚蠢!謝謝您的幫助!!!!!!!!! – 2012-07-05 16:48:40

+0

你能告訴我爲什麼當我使用數據綁定將「數據」推送到下一個視圖時出現錯誤。我有一行設置一個字符串= data.UserCommonReturn,它說「訪問未定義的屬性」,但在其他幾個視圖,它工作正常......任何想法? – 2012-07-05 16:52:43

+0

我不確定,我必須看到代碼才能猜出發生了什麼 – 2012-07-05 16:54:29

相關問題