屏幕圖片及文字適配

原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://mikewang.blog.51cto.com/3826268/865304

問題:

測試時,發現應用在不同的顯示器上顯示效果不同(部分文本不能顯示完全),自然想到屏幕適配的問題。

按照思路整理如下:

(一) 幾個概念

1, Screen size 屏幕的尺寸,即對角線長度(單位inch-英寸)

2, Screen density屏幕密度,即單位長度像素點數(pots/inches)

3, Resolution 分辨率,即屏幕的總像素點數(width * height)

4, Density-independent pixel (dp)獨立像素密度。標準是160dip.即1dp對應1個pixel,計算公式如:px = dp * (dpi / 160),屏幕密度越大,1dp對應 的像素點越多。

 

(二) 屏幕的分類(size & density)

1, 以總像素數分,文本的size等都要改,如下圖所示

    每一個分類都有其最小分辨率,如下,可根據分辨率劃分種類:

 

2, 以屏幕密度分,提供不同的圖片如下圖所示

Note1:匹配以上面兩種爲參考。

Note2:還有專爲水平(landscape)和豎直(portrait)兩種,使用的少,在此不贅述。

 

(三) Android尋找最佳資源原理

1, 排除與設備設置不符合的資源

2, 根據限定詞(qualifier)的優先級,按照順序查找

3, 在限定詞下,是否存在資源路徑

4, 排除不包含在限定詞中的資源路徑

5,  繼續執行不同的限定詞查找,直到找到相應的資源

如下圖所示:

 

(四) 項目步驟:

1, manufest中配置

  1. <supports-screens 
  2.        android:anyDensity="true" 
  3.        android:largeScreens="true" 
  4.        android:normalScreens="true" 
  5.        android:smallScreens="true" 
  6.        android:xlargeScreens="true" /> 

2, 新建對應的資源文件夾

A, Layout

例如,我現在有三個顯示器分辨率:

分別爲1280*720,1024*768,1200*690 

根據以上最低分辨率的要求,分爲xlarge和large兩類,新建兩個文件夾,如下:

如下圖所示:

B, Drawable

如下圖所示:

 在drawable中,以mdpi爲標準(即160dpi)。比例保持爲3:4:5:6,如下圖所示:

 

本文出自 “小新專欄” 博客,請務必保留此出處http://mikewang.blog.51cto.com/3826268/865304

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章