Android強大的百分比適配(Hongyang)

Android碎片化非常嚴重,各大手機廠商都定製自己的手機系統,選擇大小各異的手機屏幕尺寸和解析度,這就導致Android適配顯得格外重要。Android適配大體可以分為版本適配和布局適配,這裡我們講下如何做好布局適配,希望大家能夠讀完,對自己的開發非常有益,如果哪裡有紕漏,還請指正,多謝大家支持。

Hongyang開發

1. 常見的適配方式極其弊端

dp:最常見的適配方式,但是呈現的效果只是相近而已;甚至4.3寸屏幕上準備的UI,放在5.0屏幕上,很可能右側和下側出現很大的空白。

weight:當我們想讓兩個控制項各占屏幕的1/2的時候,weight可以達到很好的效果,但是功能太過單一。

2. PC端如何解決適配問題

Advertisements

從事Android開發,我們從來沒有聽過PC端同事抱怨適配的問題,因為PC提供了百分比適配大小。

3. Android百分比適配

借鑒PC百分比適配,Hongyang開發出了Android百分比適配框架,使用簡單,功能強大。

原理:根據市面上手機解析度的佔比分析,我們把1280*720設定為一個基準,然後其他解析度根據這個基準做適配。

基準的意思(比如320*480的解析度為基準)是:

  • 寬度為320,將任何解析度的寬度分為320份,取值為x1-x320

  • 高度為480,將任何解析度的高度分為480份,取值為y1-y480

例如對於800*480的寬度480:

可以看到x1 = 480 / 基準 = 480 / 320 = 1.5 ;它的意思就是同樣的1px,在320*480解析度的手機上是1px,在480*800的解析度的手機上就是1*1.5px,px會根據我們指定的不同values文件夾自動適配為合適的大小。如果你還是不太懂,那不要緊,看看下面的操作方法,你就會懂了。

Advertisements

4. 使用方法:

  • 首先下載jar包:

鏈接: http://pan.baidu.com/s/1cEaHMu 密碼: 4p4z

  • 其次解壓查看jar運行說明.txt文件

定製以1280*720為基準的解析度:

注意操作方法:在你下載后的文件夾裡面 按住Shift+滑鼠右擊進入命令行對話框,輸入 java -jar autolayout.jar 720 1280 就會自動生成res文件夾(默認的是以1080*1280為基準,所以需要自己設置),假如你覺得這些value文件夾裡面沒有你想要的解析度可以在制定基準解析度的同時,添加額外的解析度(比如400*600),輸入java -jar autolayout.jar 720 1280 400,600,假如想多添加幾個額外的解析度(又想添加500*700)只需把額外的解析度用下劃線隔開即可,輸入java -jar autolayout.jar 720 1280 400,600_500,700

  • 接著把res裡面的value文件夾放到res下面即可

  • 設計師美女給我們設計圖(標記好了各個控制的大小距離等等),肯定是以px為標記的,那假如寬50px,高80px,我們只需要把寬高寫為@dimen/x50,@dimen/y80即可

注意:我們用AndroidStudio開發的時候,邊寫布局邊看AndroidStudio的布局效果圖,有時候@dimen/xxx會報錯,說找不到,這個時候我們看下AndroidStudio的布局效果圖是在哪個解析度下面,然後看看res文件夾下面是否有對應的values解析度文件夾,如果沒有通常會報錯,這個時候把AndroidStudio的布局效果圖對應的解析度改為我們res文件夾裡面有的values解析度就可以了。

Advertisements

你可能會喜歡