现在手机尺寸不同,分辨率不同,对于开发者来说,屏幕适配就是一个很头疼的问题了,一直在找一个比较好的适配方法!

先说说web开发,电脑也是有不同尺寸和不同分辨率的,但是却很少听web开发者说屏幕适配很头疼,因为在web前端中的尺寸是使用百分比的,不管屏幕多大,这个控件就是占据屏幕的百分之多少,这样就不用考虑屏幕适配了!

但是对于Android,最开始对控件的大小设置似乎是不支持设置百分比的,顶多对于线性布局来说有一个 android:layout_weight 和 android:weightSum来设置权重,可以不靠路屏幕适配,但是线性布局很多时候不能满足我们的需求!

废话就不说了,下面看一下屏幕适配的方法!


先下载一个压缩包:https://github.com/mengzhinan/PhoneScreenMatch     下面要用到(screenMatchPX.bat、screenMatchPX.jar,screenMatchDP.jar,screenMatchDP.jar都在里面)

一、px适配:

一般图标上习惯使用px,而Android开发中常使用dp。

步骤:

1、把screenMatchPX.bat和screenMatchPX.jar两个文件拷贝到你项目的main目录下;

2、修改screenMatchPX.bat文件中你需要适配的屏幕参数;

Android PopupWindow 自适应宽高 安卓开发自适应屏幕_android

这里可以根据自己的需求添加(注意这些数字的格式是:待适配w,待适配h;待适配w,待适配h;待适配w,待适配h):

320,480;480,800;480,854;540,888;600,1024;720,1184;720,1196;720,1280;768,1024;768,1280;800,1280;1080,1812;1080,1920;1440,2560

3、进到screenMatchPX.bat文件所在的硬盘位置,双击执行。执行是不要在AS里面双击,AS不可执行bat文件。

到此就搞定了!!!


二、dp适配:

步骤:

1、默认的values文件夹中需要一份特定的dimens.xml文件(可以是开发时写的仅有的一份dimens.xml)。

2、把screenMatchDP.bat和screenMatchDP.jar两个文件拷贝到你项目的main目录下;

3、修改screenMatchDP.bat文件中你需要适配的屏幕dp参数;

Android PopupWindow 自适应宽高 安卓开发自适应屏幕_屏幕适配_02

一般是:360 384 400 411 533 640 720 768 820 

4、进到screenMatchDP.bat文件所在的硬盘位置,双击执行。执行是不要在AS里面双击,AS不可执行bat文件。

好了,就是这样!


三、话说Android已经出了百分比的布局方式: