2012-10-18 59 views
0

我在客戶端使用GWT,活動地點爲&。 我得到了一個佈局(LeftSide - CenterSide - RightSide),每邊都有它自己的ActivityMapper + Activity + View。GoogleWebToolkit運行時動態佈局活動

我想動態地將Views(With activity)添加到Sides。 例如,如果用戶的性別是男性,則在左側顯示AView + APresenter和BView + BPresenter;但是如果用戶的性別是女性,則只顯示BView + BPresenter。

一個人可以幫我解我該怎麼做?

感謝

+0

「我的GoTa佈局」:那麼你可以在啓動時(onModuleLoad)是否創建第四ActivityMapper沿其ActivityManagerAcceptsOneWidget簡單地決定? DockPanel中? 「我該怎麼做」 - 問題是什麼,到目前爲止你做了什麼? – Martin

回答

1

你必須創建第四ActivityMapper需要時返回null
它的顯示區域(AcceptsOneWidget)在通過null小部件時可能收縮/消失。

有關更多上下文和一些示例代碼,請參閱http://blog.ltgt.net/gwt-21-activities-nesting-yagni/。但是,如果您因用戶而異,並且在應用程序外部進行身份驗證(即應用程序已裝載已知用戶,並且它永遠不會更改,或者該應用程序已重新加載給其他用戶),但是, - 什麼佈局

if (user.getGender() == Gender.MALE) { 
    SimplePanel display = new SimplePanel(); 
    parent.add(display); 

    ActivityManager manager = new ActivityManager(new MaleSpecificActivityMapper(), eventBus); 
    manager.setDisplay(display); 
}