2012-11-01 27 views
0

有沒有辦法添加動態數量的演示器小部件?我可以添加單獨的演示者,但是如何添加收藏。我有一個佔位符,在我UiBinder的XMLgwt動態數量的演示器小部件

ui.xml

<g:LayoutPanel ui:field="collection"/> 

查看

@Override 
public void setInSlot(Object slot, Widget content) { 
    if (slot == TicketPresenter.DYNAMIC_COLLECTION_SLOT) { 
     collection.clear(); 
     collection.add(content); 
    } 
} 

演示

setInSlot(DYNAMIC_COLLECTION_SLOT, collectionPresenter); 

但我希望能有一個列表主持人和將它們全部添加到收集面板。這可能嗎?我知道我可以創建一個組合來做到這一點,但我想使用演示者小部件。

+0

你是什麼意思「演示者小部件」?如果你在僞代碼中顯示你想要的東西,那將更加清晰。 –

回答

0

通常在您的視圖中,您不僅會

@Override 
public void setInSlot(Object slot, Widget content) 

而且

@Override 
public void addToSlot(Object slot, Widget content) 

所以,你可以遍歷您的Widget集合,並呼籲addToSlot每個部件覆蓋。您的addToSLot impl看起來像

@Override 
public void addToSlot(Object slot, Widget content) { 
    if (slot == TicketPresenter.DYNAMIC_COLLECTION_SLOT) { 
     collection.add(content); 
    } 
} 

這意味着您不需要在添加操作時清除佈局容器。

+0

謝謝!這就是我所錯過的。 –

0
public void addListOfWidgets(List<Widget> content) { 
    collection.clear(); 
    for (Widget widget : content) { 
     collection.add(widget); 
    } 
}