屏幕适配

来源:互联网 发布:淘宝直播个人中心 编辑:程序博客网 时间:2024/06/13 22:20
@屏幕密度(dpi=dots per inch):
·低密度(ldpi),代表性配置:120ppi(像素/英寸),240 * 320分辨率;
·中密度(mdpi),代表性配置:160ppi(像素/英寸),320 * 480分辨率;
·高密度(hdpi),代表性配置:240ppi(像素/英寸),480 * 800分辨率;
·超高密度(xhdpi),代表性配置:320ppi(像素/英寸),720 * 1280分辨率;
·超超高密度(xxhdpi),代表性配置:480ppi(像素/英寸),1080 * 1920分辨率;——当前主流配置
·见【屏幕密度.png】
·获取屏幕参数API:
DisplayMetrics metrics = getResources().getDisplayMetrics();
        //metrics.widthPixels
        //metrics.heightPixels
        //metrics.densityDpi
----------------------------------------
@像素单位:
·px,Pixels,像素,一个物理像素点;
·dp,Density-Independent Pixels,密度无关的像素,在不同密度的设备上dp将以不同方式换算为px(而用户感觉它们的大小是相近的,所以称为“密度无关”);
·sp,Scale-independent Pixels,大小无关的像素,被用来在不同设备上兼容字体大小;
----------------------------------------
@dp与px的换算:
·ldpi:1dp=0.75px
·mdpi:1dp=1px
·hdpi:1dp=1.5px
·xhdpi:1dp=2px
·xxhdpi:1dp=3px
----------------------------------------
@屏幕适配方法:
·为不同设备设置不同的资源文件夹,即同种资源文件夹可以有不同后缀名,如mipmap=默认设备图片文件夹,mipmap-xxhdpi=超超高密度图片文件夹;
·设备会按照一定的规则“就近适配”,如超高密度手机在没有mipmap-xhdpi的情况下,会去适配mipmap-xxhdpi而不会去适配mipmap-mdpi;
·常用的适配指标包括:像素密度、分辨率、横竖屏、语言等,例如:
drawable-xxhdpi——适配超超高密设备的drawble(其图片通常比普通drawable的要大)
drawable-360x640——适配【360dp x 640dp】设备的drawable
values-land——适配横屏设置的values
values-en-land——适配操作系统语言为英语且横屏的设备的values
·来一个长的资源文件夹名字:
  values-mcc123-mnc456-zh-rCN-ldltr-sw820dp-h820dp-xlarge-notlong-port-television-night-xxxhdpi-finger-keyssoft-qwerty-navhidden-wheel
  ——适配同时满足以下条件的设备:国家码为123、网络码为456、操作系统未简体中文、文字方向为从左到右、屏幕宽度不低于820dp、高度为820dp、特大屏幕、非加长型屏幕、竖屏、设备类型为电视、夜间模式、超超超高密度、手指触控、软键盘、导航隐藏、滚轮操作;
----------------------------------------
@适配竖屏手机应用的常用技巧:
·多用权重,少用具体值;
·一套layout + 多套(不同密度的)dimen
----------------------------------------
@应用举例:
·适配不同操作系统的语言(strings.xml)
·为横竖屏切换适配不同的布局文件
·为不同屏幕密度的手机适配不同的尺寸资源(dimens.xml)
0 0
原创粉丝点击