我試圖瞭解哪種佈局使用哪種設備。試圖定義設備應使用哪種佈局
舉例來說,我有不同的佈局:
- 佈局
- 佈局sw600dp
- 佈局sw720dp
的Nexus 7" (800x1280)使用佈局sw600dp
Samsung GTp3100 7「(600x1.024)使用layout-sw600dp
三星標籤10.1(1280×800)使用佈局sw720dp
索尼XPERIA小號4.3(1280×720)使用佈局
你們能否解釋一下 「與你的話」 爲什麼不是XPERIA S使用sw600dp或sw720dp? SW!=最小寬度?所以從XPERIA S最小的是720.它應該使用sw720或sw600,對吧?或者我錯了?
我讀過大量的文檔,但不明白爲什麼會發生這種情況。
非常感謝。
謝謝。通過下面的代碼管理它:'float density = getResources()。getDisplayMetrics()。density; float dpHeight = outMetrics.heightPixels/density;順便說一下,是否有任何公式可以得到該值「2.5」,與getResources()。getDisplayMetrics()。get; get。get()相同。 – Reinherd 2013-03-22 08:16:42
@SergiCastellsaguéMillán:您可以使用'DisplayMetrics'的'xdpi'和'ydpi'字段來獲取每個維度的實際dpi值。計算物理屏幕尺寸就是重新排列我用來計算我的答案中的dpi的公式(例如,'720/2.5 = 288 dpi',它是'px/size = dpi'),所以'px/dpi =大小'。從'DisplayMetrics'你可以使用'widthPixels/xdpi'來獲得屏幕的物理寬度。 – Squonk 2013-03-23 02:13:48