2013-03-15 28 views
0

UiBinder的佈局順序我有UiBinder的聲明一個小部件。此小部件的實例廣泛用於構建不同視圖的應用程序中。我的任務是實施一個新的視圖,其中應重新排列幾個面板。更換部件在GWT應用

<g:FlowPanel ui:field="text" styleName="..."> 
... 
<g:FlowPanel> 

<g:FlowPanel ui:field="images" styleName="..."> 
... 
</g:FlowPanel> 

對於給定的樣本結構我需要把圖片上的文字爲新的自定義視圖的頂部。我不想複製小部件的代碼。我不想用虛擬容器替換面板,然後在代碼中添加該容器,因爲樣式已經在這裏,而其他代碼依賴於此結構。

我現在在做什麼解決的一個問題是我換這兩個板與容器FlowPanel在UiBinder的(這是無害的,到目前爲止),並根據我做類似的代碼如下背景:

if (isSwapRequired) { 
    images.removeFromParent(); 
    container.insert(images, 0); 
} 

的問題是 - 有沒有這樣做重新排序的更優雅的方式,或者給定的方法是不夠好?

謝謝。

+1

看來你已經回答了你自己的問題,以及它是否足夠好,那麼你很可能要回答這個問題,得最好的人。 一個「虛擬容器」的思想造成某種門戶設計,其中每個部件都是獨立的。也許你可以用ResourceBundles處理樣式,用一些老式的對象建模(繼承和接口)來處理「其他代碼」。但是,正如您似乎意識到的那樣,與現有的簡單解決方案相比,這是更多的代碼。 – Glenn 2013-03-15 22:17:43

回答

0

結束了使用現有的簡單解決方案。

0

我推薦您使用的意見了一些實現和主持人通過接口與他們溝通。