11
A
回答
16
是的,你可以!在下面的示例代碼中,我假設您的HomePresenter是一個位置並擴展了Presenter,並且您的MenuPresenter擴展了PresenterWidget。
在你MainPresenter:
@ContentSlot public static final Type<RevealContentHandler<?>> MAIN_SLOT = new Type<RevealContentHandler<?>>();
@ContentSlot public static final Type<RevealContentHandler<?>> MENU_SLOT = new Type<RevealContentHandler<?>>();
@Override
protected void onReveal() {
super.onReveal();
setInSlot(MENU_SLOT, menuPresenter);
}
在你HomePresenter:
@Override
protected void revealInParent() {
RevealContentEvent.fire(this, MainPresenter.MAIN_SLOT, this);
}
中的MainView
然後:
@UiField Panel mainContainer;
@UiField Panel menuContainer;
@Override
public void setInSlot(Object slot, Widget content) {
if (slot == MainPresenter.MAIN_SLOT) {
mainContainer.clear();
mainContainer.add(content);
} else if (slot == MainPresenter.MENU_SLOT) {
menuContainer.clear();
menuContainer.add(content);
} else {
super.setInSlot(slot, content);
}
}
1
對於GWTP 1.5+的用戶,請注意了很多新的變化有被介紹給插槽,並揭示演示者。這種情況下,現在可以使用頁面內容的NestedSlot和您希望顯示在所有頁面上的菜單的PermanentSlot來完成。
幸運的是,這些更改已有詳細記錄。有關如何使用它們的示例,請參閱GWTP slot documentation以獲取關於新插槽類型的解釋。
+0
現在通過文檔閱讀兩天,但我仍然不能回答[這個相當簡單的問題](http://stackoverflow.com/questions/35729549/how-to-use-gwtp-for-a-listview-widget )^^ – displayname
相關問題
- 1. GWTP嵌套的標籤主持人
- 2. GWTP:事件和嵌套主持人
- 3. GWTP創建新的主持人每次
- 4. GWTP和抽象主持人類
- 5. GWTP:在註銷清楚主持人
- 6. 使用雙重嵌套的GWTP
- 7. 如何使用嵌套/複合主持人的MVP?
- 8. 嵌套選項卡gwtp
- 9. GWTP嵌套主講人:類型<RevealContentHandler <?>>解決不了
- 10. GWT平臺網守和嵌套主持人
- 11. 使用jQuery與嵌套的主頁
- 12. 嵌套使用一個好主意
- 13. 私人嵌套類
- 14. 在首頁訪問中揭示GWTP中的nester主講人
- 15. 模型 - 視圖 - 演示者與代理,事件和嵌套主持人
- 16. Umbraco嵌套主頁
- 17. .replace和主持人
- 18. 主持人通知
- 19. 嵌套的主頁和.FindControl
- 20. 嵌套的主頁問題
- 21. 獅身人面像中的嵌套XML搜索支持?
- 22. 令人驚訝的嵌套循環持續時間
- 23. 模型/視圖/主持人:主持人對演示者通信
- 24. MySQL - 引用嵌套選擇主查詢(需要嵌套)
- 25. $ addToSet嵌套嵌套對象使用pymongo
- 26. C++:私人嵌套類型
- 27. 使用Ruby將「主列表」樣式嵌套數組轉換爲嵌套哈希
- 28. 問題持續嵌套嵌套嵌入文檔
- 29. 使用當前進程中的變量在主持人主持人的劇本中運行命令
- 30. 嵌套數組不支持
@Mikael,你的回答真的有幫助。但我有一個問題。這裏你要做的是將add-remove-add-remove .. content(Widget)添加到mainContainer(Panel)中。這不是一個開銷嗎?我們不能做隱藏內容顯示(Widget)嗎? – RAS
@RAS其實,我不知道如何以任何其他方式做到這一點。 setInSlot()方法與具有獨立主持人的UI的組成相關,因此在某些時候,您必須在面板中注入一個小部件。另外,清除面板並不意味着所包含的小部件被丟棄,它可以稍後重新注入。 –
@MikaelCouzic,謝謝你的回覆。我明白你的觀點。 – RAS