您的位置:首页 > 移动开发 > Android开发

Android屏幕适配

2015-12-20 22:18 465 查看
     Android屏幕大小种类有很多,需要在开发的时候适配不同的手机屏幕,适配的方案有很多种可以在开发

 中选择最适合的

 一、常见适配方案

     1.图片适配

     2.等比缩放

	    分为:dimens(values文件下)

		  权重

		  java代码控制子控件宽高

     3.layout重新布局

     4.根据百分比布局(AndroidStudio)

	目前只支持PercentRelativeLayout和PercentFrameLayout

     5.终极方案(详情见下)

 二、适配方案详解

     1.图片适配

	目前主流的手机屏幕是1080*1920和720*1280,一般美工切出来这两个屏幕的图片就可以使用市面上

        大部分的Android手机了,当然如果美工很闲的话可以针对每种屏幕都切出一套图来,不过要考虑应

        用程序不要太大

     2.等比缩放

	①dimens文件

	  以一种手机屏幕密度为标准,适配其他屏幕密度的手机

	  例如在480*800的屏幕中放置宽为240px的控件(宽度一半),现在要适配到320*480的手机上宽度应

          为 =(240px/480px)*320=160px即为适配手机宽度的一半

	  dp引入

	    以屏幕密度划分常见的有7种,以逻辑尺寸(dp)划分常见有四种,可以一定程度上完成适配

	    android手机屏幕密度等级和屏幕逻辑尺寸的参数可以参考下面博客链接

		http://blog.csdn.net/zhaoyw2008/article/details/46008513

        ②权重

	  在布局的时候全都按照权重的方式,那么这样的布局可以适应任何的屏幕(只能在线性布局中)

        ③java代码

	   布局中带有layout开头的属性都是以父布局为基准的,我们也可以在java代码中通过拿到父布局

	   的对象,通过父布局的layoutParams属性来布局本身

     3.layout重新布局

	无疑这是我们最最不想要的结果,一般是不会采用这种方法的

     4.根据百分比布局

	这是AndroidStudio中新引入的,类似于线性布局的权重,但是目前只有PercentRelativeLayout和

	PercentFrameLayout两种布局

	使用:

	   ①要在gradle文件中添加节点

dependencies {
compile 'com.android.support:percent:22.2.0'
}


	   ②设置根结点为PercentFrameLayout或者PercentRelativeLayout

	   ③设置View的layout_width="0dp",layout_height="0dp"

	   ④使用app:layout_heightPercent="百分比"

		 app:layout_widthPercent="百分比"

      5.终极方案

	以720*1280为基准	,逻辑尺寸为360dp*640dp,通过代码生成其他三种逻辑尺寸对应大小的xml文件

	每一个基准下dp值都转换为其他三种逻辑尺寸下的dp值,并且都以基准dp的名字命名

	基准值如下


	320dp*400dp下的值


	这样就可以很方便、简单、快捷的做到屏幕适配,非常nice



  三.小结

      屏幕适配的这几种方式可以根据项目的具体情况使用,能够达到把项目做好的目的就好了,当然还有很

   多其他方法来适配手机屏幕有待大家开发





                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: