2012-07-22 94 views
3

我一直在試圖獲得Android上的通用佈局,沒有成功。我的理解是,如果您在dp中指定了所有小部件,並使其在一個屏幕大小中看起來正確,它應該適當調整爲其他分辨率,但我的結果看起來有點不對勁。Android的佈局,指定dp與屏幕大小的比例

我使用相對佈局將所有內容都放在HVGA中。相對佈局具有我們的UI設計者用來定義元素邊界的背景。在這個佈局中,一切看起來都很完美

然後我切換到一個更大的屏幕,稍有不同的縱橫比,背景正確尺度,但一切由一些DP看起來關閉。我的問題是,通過屏幕使所有元素正確縮放的最佳方式是什麼?我想保留所有元素相對於背景的比例。 Layout where everything looks fine

scaled up layout where background looks fine but the left listview with a 100dp width scales improperly

謝謝!

編輯:想通了如何做到這一點。按鈕和背景之間不一致的原因是背景與dp的縮放比例不同,並且設備顯然具有不同的dps。解決方案是手動計算絕對像素的比例因子,然後按照該因子手動縮放所有內容。這裏是一個很好的參考如何做到這一點: Scale Android for different screens

+0

加入了截圖,將有助於我們明白你的意思(是什麼問題) – Nate 2012-07-22 10:49:23

+0

剛拿到足夠的聲譽。截圖上傳。 :D – hohohmm 2012-07-23 03:38:59

+0

更新原始帖子以顯示我的解決方案。 – hohohmm 2012-08-08 02:29:28

回答

2

DP秤本身以這樣的方式,使得任何部件的尺寸保持在具有不同的分辨率不同的屏幕不變。 在你的情況下,列表視圖的大小保持不變,但背景拉伸到屏幕寬度。爲避免這種情況,請使用第一種顏色作爲第一個列表視圖的背景,並與第二個列表視圖相同。