2011-09-06 56 views
0

我想要做的事情是爲Sensation和Desire模型設置不同的佈局。HTC Desire和HTC Sensation的多屏幕

我讀了關於多屏幕編程的事情,並提供了不同屏幕尺寸和密度的資源,但是這種感覺決議令我發狂。我有一個完美的HTC Desire的佈局;它們被放置在佈局中,並且圖紙被放置在hdpi中。一切都很完美。當我嘗試在Sensation上運行應用程序時,問題出現了,一切都放錯了位置,看起來非常難看。

我的問題是在哪裏把感覺佈局? 我應該爲Sensation使用什麼限定符名稱?

回答

1

嘗試使用以下代碼查找設備的分辨率和密度(Sensation)。

Display display = getWindowManager().getDefaultDisplay(); 
    DisplayMetrics dm = new DisplayMetrics(); 
    display.getMetrics(dm); 

    int width = display.getWidth(); 
    int height = display.getHeight(); 
    int density = dm.densityDpi; 
    String densityString = null; 

    if(density == DisplayMetrics.DENSITY_HIGH) { 
     densityString = "HDPI"; 
    } else if(density == DisplayMetrics.DENSITY_MEDIUM) { 
     densityString = "MDPI"; 
    } else if(density == DisplayMetrics.DENSITY_LOW) { 
     densityString = "LDPI"; 
    } 

然後使用你適當的資源名合格者爲繪製和佈局文件夾中Multiple Screen Support。 (例如)繪製-大華電國際佈局大華電國際

這是不可行的所有時間,因爲你不會有訪問所有的設備在那裏。因此,根據如何從上述給定鏈接測試您的多屏應用程序中的表格,創建具有不同顯示配置的AVD更好。

+0

問題是htc的慾望和感覺都有layout-large-hdpi – Lukap

+0

我看起來也一樣。但關鍵是我不想那麼做!我想要有不同的佈局,導致屏幕尺寸不同,但它們都處於相同(大)類別。慾望有480x800的感覺有540x960分辨率 – Lukap

+0

如果你找到答案請讓我知道,因爲我真的用這個撓我的頭 – Lukap