2016-09-24 73 views
1

我需要創建一個Container佈局爲兩行,第二個是第一個高度的兩倍,並將容器放在南面的BorderLayout的位置。我嘗試使用兩行一列的TableLayout來完成此操作,分別將高度百分比設置爲33和67。然而,TableLayout填滿了整個屏幕,而不僅僅是「南部」區域。 javadocs表示身高百分比是指「父母」,我認爲這將是與TableLayout容器。但是,顯然,所涉及的父母將是顯示器。TableLayout heightPercentage:百分比是什麼?

我的下一個嘗試是創建一個三行一列的TableLayout,給出較低的內容的垂直跨度爲2.但最後一行卻消失了。

有沒有我忽略的解決方案?

回答

0

佈局中有兩個單獨的階段,請求首選大小和處理指定的大小。

在請求階段,我們沒有最終的大小,所以這是「猜測」(我的拼寫檢查器沒有標記?)。

當我們進行佈局時,我們已經根據首選大小分配了大小,然後根據分配的大小計算百分比。

如果將表格佈局容器放在邊界佈局的中心,它將獲得所有可用空間,因此計算階段的首選大小方面將變得毫無意義,然後百分比將是分配給該組件的空間是「所有可用空間」。自然滾動將其帶入完全不同的維度。