2011-12-06 28 views
0

我有一個包含菜單的視圖,它允許您根據點擊的位置瀏覽5個不同的部分。當你點擊你沒有改變頁面時,你隱藏了其他部分並顯示你所要求的。要求所有東西都在同一個地方發生。MVP與GWTP:演示者不符合比例

從視圖是簡單和乾淨的每個部分是不同的類和視覺上它們是互斥的。我通過「獲取」部分本身來訪問每個部分的控件

從Presenter是一團糟,我必須在單個演示者類的所有5個部分的onBind()方法上註冊處理程序,並且所有事件的邏輯也在那裏,事件處理程序開始與類似的名字衝突。

我該如何分解演示者,因爲我正在處理視圖?

視圖實例

public interface MyView extends View { 

    public DeviceSettings getDeviceSection();  

    public Reports getReportsSection(); 

    public License getLicenseSection(); 

    public Support getSupportSection(); 

} 

回答

1

您可以創建PresenterWidgets/Views爲每個部分,然後將其注入到你的MainPresenter。
您將處理程序添加到菜單中,然後根據所點擊的內容添加/刪除相應的PresenterWidget到您的內容插槽。
您可以查看nested presenter示例。

+0

我以爲只是彈出式窗口,但現在我得到一個彈出窗口只是更多的代碼,因爲我的部分,謝謝 – javaNoober