屏幕适配
来源:互联网 发布:淘宝直播个人中心 编辑:程序博客网 时间: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)
·低密度(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
- 【Android 屏幕适配】 屏幕适配
- Android 屏幕适配--屏幕旋转
- COCOS2DX屏幕显示与屏幕适配
- Android屏幕适配-----屏幕尺寸
- Android屏幕尺寸单位/屏幕适配
- 屏幕适配
- 【Android】屏幕适配
- android屏幕适配
- android屏幕适配
- android 屏幕适配
- Android屏幕适配
- Android屏幕适配
- Android屏幕适配
- Android屏幕适配
- android 屏幕适配
- 屏幕适配
- Android屏幕适配
- Android屏幕适配
- html常用
- 设计模式-工厂方法模式
- 判断Android程序前后台切换的几种方法
- 读书笔记——java内存区域
- WKWebView进度及title
- 屏幕适配
- XZ_iOS之Xcode快捷键
- 安装Maven,运行mvn -v后出现 Error: JAVA_HOME is set to an invalid directory.(图片可能太大,无法显示,有时间再上传)
- Android案例:商品展示
- c#详解datetime使用示例
- 那些年我用过的adb命令
- Hyperic-Sigar简介
- SQL 形式化语言——关系代数
- 达内课程-第一个程序