2012-11-24 111 views
1

我想了解Android中的多屏幕支持。是的,我閱讀了文檔,但仍然有幾個問題。Android屏幕尺寸和密度。如何選擇文字大小?

據我所知,我需要爲每個密度創建drawable,但如何處理文本大小?

我想設置我的活動標題,這將適合任何屏幕(需要足夠大的大,不翹曲文本) 我測試在我的Nexus7(大屏幕),它看起來很好用android:textSize="100dp"'

當我在「正常屏幕」大小的模擬器上啓動它時,我會得到非常大的文本。 那麼,爲每個屏幕尺寸製作佈局是否正確?

'layout' 
'layout-large' 
'layout-small' 
.... 

,只是讓android:textSize="70dp"正常屏幕和android:textSize="50dp"爲小屏幕?

另一個問題是如何以更有效的方式測試所有這些? 我需要創建模擬器?哪裏可以獲得創建模擬器來獲取結果的參數?

  1. XLARGE屏幕
    • LDPI
    • MDPI
    • tvdpi
    • 華電國際
    • xhdpi
  2. 大屏幕
    • LDPI
    • MDPI
    • tvdpi
    • HDPI
    • xhdpi
  3. 中等屏幕
    • LDPI
    • MDPI
    • tvdpi
    • HDPI
    • xhdpi
  4. 小屏幕
    • LDPI
    • MDPI
    • tvdpi
    • 華電國際
    • xhdpi

回答

2

對於文本大小,你應該使用sp個單位。Docs say

量表無關的像素 - 這是像DP單元,但它也是 通過用戶的字體大小偏好縮放。建議您在指定字體大小時使用本機的 ,因此它們將根據屏幕密度和用戶偏好進行調整。

1

據我所知,我需要爲每個密度創建drawable,但如何處理文本大小?

由於WebnetMobile指出,您首先使用sp,因爲這需要用戶選擇字體比例。但是,您可能需要更多。

那麼,爲每個屏幕尺寸製作佈局是否正確?

我會建議使用維度資源,根據您的不同情況需要使用不同的文本大小維度定義。

儘管如此,儘可能將您的UI設計爲更靈活的字體大小。再次,如果您使用sp,則用戶可以更改Android 4.0+上的文本大小,以使其更大或更小,以幫助他們閱讀設備上的文本。因此,您不能認爲您完全控制了字體的大小,因此需要進行相應的設計。這與設計考慮到用戶在其瀏覽器中對字體大小的調整的網站沒有顯着不同。

而另一個問題如何以更有效的方式測試所有這些?我需要創建模擬器?

您需要模擬器或設備來處理任何與您有關的情況。

從哪裏獲取創建模擬器以獲取此結果的參數?

在當前(當前)R21版本的工具上,您可以在AVD Manager的設備定義選項卡中設置屏幕大小和密度,然後根據需要根據這些定義創建AVD。

0

爲了在不同的屏幕和密度下測試,您可以創建具有不同組合的仿真器。當我們創建仿真器設備時,我們可以設置密度(硬件下的抽象LCD密度)。

ldpi - 120 
    mdpi - 160 
    hdpi - 240 
    xhdpi - 320 

您可以設置屏幕大小也同時啓動模擬器