我在Accordian中使用Repeater,看起來看不到UserArray中的單個元素。如果我向userArray添加另一個條目,那麼Repeater工作正常。中繼器無法正常工作,當傳遞具有單個元素的數據提供者(數組)時
想法??
private function currUsersServiceHandler(event:ResultEvent):void{
if (event.result.currentUsers != null)
{
if (event.result.currentUsers.user is ArrayCollection) // if more than one elements are present
{
usersArray = event.result.currentUsers.user;
}
else if (event.result.currentUsers is ObjectProxy)
{ //FIXIT usersArray populate by following line has some issue
usersArray = new ArrayCollection(ArrayUtil.toArray(event.result.currentUsers));
}
}
}
<mx:HTTPService id="currUsersService" url="currUsers.xml" result="currUsersServiceHandler(event)"/>
<mx:Accordion includeIn="UserList" x="10" y="10" width="554" height="242" >
<mx:Repeater id="rep" dataProvider="{usersArray}">
<mx:Canvas width="100%" height="100%" label="{rep.currentItem.firstName}" >
<mx:HBox>
<s:Label text="{rep.currentItem.firstName}"/>
<s:Label text="{rep.currentItem.lastName}"/>
<mx:/HBox>
</mx:Canvas>
</mx:Repeater>
</mx:Accordian>
編輯:
還有就是我剛纔注意到,即該手風琴確實顯示一個選項卡(在數組有一個元素),但它不是與我設置的第一個名字標記另一件事。如果我輸入另一個用戶,則會出現兩個選項卡,並且兩個選項卡都標有我設置的名稱。第一個選項卡也顯示爲標籤。
無後顧之憂。如果您將其從Accordion標籤中移除,您的中繼器是否可以正常工作? – 2011-02-24 16:16:43
直放站需要一個容器,對吧?所以我需要有Accordian(容器)。如果我刪除手風琴標籤,那麼我得到以下錯誤:中繼器需要一個基於Halo容器的父母 – baltoro 2011-02-24 16:24:16
是的,它的確如此。你嘗試過VBox嗎? – 2011-02-24 16:31:02