2011-06-28 77 views
4

我有以下代碼:的Flex 3:錯誤:Repeater未執行......我知道爲什麼,但我不知道如何解決它

<mx:Repeater id="showNames" dataProvider="{parentApplication.bfa1aStudents}"> 
    <mx:Text text="{parentApplication.getStudentName(showNames.currentItem)}" color="#8ab534" click="nameSelected(Number(showNames.getRepeaterItem(showNames.currentIndex)));" selectable="false" mouseOver="parentApplication.switchCursor(true);" mouseOut="parentApplication.switchCursor(false);" /> 
</mx:Repeater> 

我知道你不能使用CURRENTITEM或CURRENTINDEX點擊...並且這個問題是用getRepeaterItem()函數解決的,但我不確定如何使用它。 DP是一堆數字,代表用戶ID(如果有的話)。如果任何人都可以用我的「點擊」部分的文字幫助我,它將不勝感激。

+1

首先,你不應該使用'parentApplication'。將您的觀點與該應用程序類聯繫起來是一種可怕的做法。其次,如果你只是在展示文字,你爲什麼不使用列表呢? –

+0

那麼我將如何引用在整個應用程序中用於幾個不同圖層(父母,孩子等)的項目和功能? – Brds

+0

冒泡事件? –

回答

6

嘗試event.currentTarget.getRepeaterItem()的點擊,而不是showNames

1

嘗試:

event.currentTarget.selectedItem.data 
在點擊處理程序

2

嘗試將文本組件包裝在VBox中。就像JAX所說的那樣,還有一些其他問題可能需要考慮解決。

相關問題