簡體   English   中英

Android上不同屏幕尺寸的不同布局?

[英]Different Layouts For Different Screen Sizes On Android?

所以我在Eclipse中使用圖形編輯器, AbsoluteLayout ,固定像素值等制作了一個應用程序......一般來說只是不好的做法。 它默認為3.7in screen 有沒有辦法為每個屏幕尺寸design separate layout ,並讓程序根據所述屏幕尺寸選擇加載哪個?

為不同的屏幕大小提供不同的布局默認情況下,Android會調整應用程序布局的大小以適應當前的設備屏幕。 在大多數情況下,這很好。 在其他情況下,您的UI可能看起來不太好,可能需要針對不同的屏幕尺寸進行調整。 例如,在較大的屏幕上,您可能需要調整某些元素的位置和大小以利用額外的屏幕空間,或者在較小的屏幕上,您可能需要調整大小以使所有內容都適合屏幕。
可用於提供特定於大小的資源的配置限定符是small,normal,large和xlarge。 例如,超大屏幕的布局應該在layout-xlarge /中。

從Android 3.2(API級別13)開始,不推薦使用上述大小組,您應該使用sw <N> dp配置限定符來定義布局資源所需的最小可用寬度。 例如,如果多窗格平板電腦布局需要至少600dp的屏幕寬度,則應將其放在layout-sw600dp /中 使用新技術聲明布局資源將在有關為Android 3.2聲明平板電腦布局的部分中進一步討論。

從Android 開發者網站 - 只需使用layout-small / layout-xlarge / etc ..文件夾:=)最好的方式..

我通過在啟動時運行此代碼來修復此問題

    Display display = getWindowManager().getDefaultDisplay(); 
    int width = display.getWidth();
    int height = display.getHeight();

從那里我做一個if語句來檢查分辨率並加載為該分辨率制作的特定布局。 EX。 WVGA屏幕是800x480所以我檢查並加載布局。

if (width == 480 && height == 800)
    {
        setContentView(R.layout.main);
    }

這是針對API <13,現在這些函數已被棄用,請參閱此屏幕尺寸以像素為單位

相反,只需在“res”文件夾中設置不同的文件夾,為小屏幕設置“layout-small”,為大屏幕設置“layout-large”,為超大屏幕設置“layout-xlarge”。 相應地設計布局。 點擊此處了解更多信息..

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM