Android不同分辨率和不同密度适配
官方原文地址:http://developer.android.com/training/multiscreen/screendensities.html
本文主要介绍:
1.dip dp sp 简单用法
2.适配不同分辨率屏幕图片的处理方法
支持不同的密度或分辨率
本课介绍如何通过提供不同的资源和使用的测量分辨率独立单元支持不同屏幕密度(分辨率)
使用独立的像素密度
设计你的布局时会有一个常见的错误,你必须避免使用绝对像素来定义距离或大小。定义布局的尺寸与像素是一个问题,因为不同的屏幕有不同的像素密度,所以相同的像素数可以对应于不同的设备上不同的物理尺寸。因此,指定尺寸的时候,总是请使用DP或SP单元。一个DP是对应于一个像素的160 dpi的物理尺寸,密度无关的像素。一个sp是相同的基本单元,而是由用户首选的文本大小(它是一个独立的规模像素)的缩放,所以在定义文字大小,你应该使用这种测量单元(但从来没有为布局大小)
例如,当你指定的两个视图之间的间距,而不是使用DP PX:
(这里我感觉官方没有说清楚,控件与控件之间最好用dip来表示,而不适用dp或px)
android:layout_height="wrap_content" android:text="@string/clickme" android:layout_marginTop="20dp" />
当指定文字大小,总是用SP:
android:layout_height="wrap_content"
android:textSize="20sp" />
提供可供选择的位图
由于Android运行在与各种各样的屏幕密度的设备,你应该始终提供满足每个广义密度桶的位图资源:低,中,高和超高密度。这将帮助你实现所有的屏幕密度,良好的图形质量和性能。
要生成这些图片,你应该与你的原始资源开始在矢量格式和生成使用以下尺寸的规模各密度的图像:
xhdpi: 2.0
hdpi: 1.5
mdpi: 1.0 (baseline)
ldpi: 0.75
从上面可以看出,如果你生成一个200x200的图像xhdpi设备,你应该HDPI产生相同的资源在150×150,100×100的MDPI终于为LDPI设备一个75X75的形象。
然后,将生成的图像文件,在适当的子目录下的res /,系统会自动挑选根据您的应用程序运行在设备的屏幕密度正确的:
如下目录:
MyProject/
res/
drawable-xhdpi/
awesomeimage.png
drawable-hdpi/
awesomeimage.png
drawable-mdpi/
awesomeimage.png
drawable-ldpi/
awesomeimage.png
然后,您引用@绘制/ awesomeimage任何时候,系统会选择基于屏幕的DPI适当的位图。
为您的应用程序创建图标的资产更多的提示和指引,看到图标设计准则。
Android不同分辨率和不同密度适配相关推荐
- 【cocos2d-x 手游研发小技巧(3)Android界面分辨率适配方案】
先感叹一下吧~~android的各种分辨率各种适配虐我千百遍,每次新项目我依旧待它如初恋···· 每家公司都有自己项目工程适配的方案,这种东西就是没有最好,只有最适合!!! 这次新项目专项针对andr ...
- android mdpi对应哪一个屏幕,android 常见分辨率(mdpi、hdpi 、xhdpi、xxhdpi )及屏幕适配...
1 Android手机目前常见的分辨率 1.1 手机常见分辨率: 4:3 VGA 640*480 (Video Graphics Array) QVGA 320*240 (Quarter V ...
- android手机分辨率适配,Android屏幕适配(一)
为什么要屏幕适配 由于Android系统的开放性,任何用户.开发者.OEM厂商.运营商都可以对Android进行定制,于是导致运行 Android 的设备多种多样,它们有着不同的屏幕尺寸和像素密度. ...
- android屏幕分辨率适配总结
不同分辨率下容易出现的问题 欢迎加入QQ交流3群:317874559 由于目前android设备的分辨率种类很多,在开发的时候不注意进行屏幕适配的话会出现很多问题.比如高分辨率和低分辨率 ...
- Android 屏幕适配之屏幕分辨率(创建不同dimen)适配
由于目前流行的Android屏幕分辨率太多,再加上UI同事设计时经常使用px单位来设计,所以导致编写Android代码时适配是一个很大的问题. 以下是本人开发过程中的适配方案 仅供参考 附:目前手机主 ...
- android分辨率2k3k4k,android 不同分辨率适配
Android主流分辨率.jpg 不同分辨率对应DPI 记录: ldpi QVGA (240×320) mdpi HVGA (320×480) hdpi WVGA (480×800) hdpi FWV ...
- android 屏幕分辨率 屏幕密度,android分辨率,屏幕尺寸,屏幕密度关系
名词定义 分辨率 分辨率就是手机屏幕的像素点数,通常描述成屏幕的"宽×高",安卓手机屏幕常见的分辨率有480×800.720×1280.1080×1920等.720×1280表示此 ...
- 【最新】Android 手机分辨率整理(做屏幕适配的拿走)
Android 手机分辨率: 320x480 320x400 480x800 480x854 540x960 600x1024 720x1184 720x1196 720x12 ...
- Android 获取设备的分辨率及屏幕密度、sw
/*** 打印不包括虚拟按键的分辨率.屏幕密度dpi.最小宽度sw*/public void printResolution(Context context){DisplayMetrics dm = ...
最新文章
- bzoj:1666: [Usaco2006 Oct]Another Cow Number Game 奶牛的数字游戏
- 快的打车联合创始人兼技术副总裁闻诚:CTO要有“334”能力
- (chap6 Http首部) 通用首部字段 DatePragma
- Java黑皮书课后题第3章:*3.20(科学:风寒温度)编写一个程序,提示用户输入一个温度值和一个风速值。如果输入值合法,那么显示风寒温度,否则显示温度或风速是不合法数据
- 为什么PCB板通常是绿色的?
- Tech·Ed 2009
- CSS每日学习笔记(1)
- Linux环境下FTP工具的使用方法
- 校企合作与集成电路--华为在行动
- calendar控件使用 extjs_extjs年月选择日历及通用js同步ajax调用返回json object
- Jenkins使用经验谈
- java复制文件拒绝访问权限_关于IO流在复制文件时出现java.io.FileNotFoundException: D:\xxx (拒绝访问。) 拒绝访问的问题...
- 不为人知的华为和小米真相
- python爬高德地图_【爬虫】Java关于高德地图爬取数据
- 微PE安装系统 不显示U盘中镜像文件 的解决方法
- Python批量复制文件夹及其内容、并按Excel表格遍历重命名文件夹
- 7-42 sdut-循环-3-评委评分(II)
- 如何使用Vegas Pro15视频剪辑软件制作遮罩转场效果?
- CentOs7 提示没有安装包docker的解决办法
- 央行简历计算机水平怎么写,2020人民银行招聘简历模板及网申指导