术语和概念
屏幕尺寸
屏幕的物理尺寸,以屏幕的对角线长度作为依据(比如
2.8寸,
3.5寸)。
简而言之,
Android把所有的屏幕尺寸简化为三大类:大,正常,和小。
程序可以针对这三种尺寸的屏幕提供三种不同的布局方案,然后系统会负责把你的布局方案以合适的方式渲染到对应的屏幕上,这个过程是不需要程序员用代码来干预的。
屏幕长宽比
屏幕的物理长度与物理宽度的比例。程序可以为制定长宽比的屏幕提供制定的素材,只需要用系统提供的资源分类符
long和
notlong。
分辨率
屏幕上拥有的像素的总数。注意,虽然大部分情况下分辨率都被表示为“宽度×长度”,但分辨率并不意味着屏幕长宽比。在
Android系统中,程序一般并不直接处理分辨率。
密度
以屏幕分辨率为基础,沿屏幕长宽方向排列的像素。
密度较低的屏幕,在长和宽方向都只有比较少的像素,而高密度的屏幕通常则会有很多
——甚至会非常非常多——像素排列在同一区域。屏幕的密度是非常重要的,举个例子,长宽以像素为单位定义的界面元素(比如一个按钮),在低密度的屏幕上会
显得很大,但在高密度的屏幕上则会显得很小。
密度无关的像素(
DIP )
指一个抽象意义上的像素,程序用它来定义界面元素。它作为一个与实际密度无关的单位,帮助程序员构建一个布局方案(界面元素的宽度,高度,位置)。
一个与密度无关的像素,在逻辑尺寸上,与一个位于像素密度为
160DPI的屏幕上的像素是一致的,这也是
Android平台所假定的默认显示设备。在运行的时候,平台会以目标屏幕的密度作为基准,“透明地”处理所有需要的
DIP缩放操作。要把密度无关像素转换为屏幕像素,可以用这样一个简单的公式:
pixels = dips * (density / 160)。举个例子,在
DPI为
240的屏幕上,
1个
DIP等于
1.5个物理像素。我们强烈推荐你用
DIP来定义你程序的界面布局,因为这样可以保证你的
UI在各种分辨率的屏幕上都可以正常显示。
图表形式
术语
|
说明
|
备注
|
Screen size
(屏幕尺寸)
|
指的是手机实际的物理尺寸,比如常用的2.8英寸,3.2英寸,3.5英寸,3.7英寸
|
摩托罗拉milestone手机是3.7英寸
|
Aspect Ratio(
宽高比率)
|
指的是实际的物理尺寸宽高比率,分为long和nolong
|
Milestone
是16:9,属于long
|
R
esolution(
分辨率)
|
和电脑的分辨率概念一样,指手机屏幕纵、横方向像素个数
|
Milestone
是854*480
|
DPI(
dot per inch)
|
每英寸像素数,如120
dpi,16
0
dpi
等,假设QVGA(320*240)分辨率的屏幕物理尺寸是(2英寸*1.5英寸),dpi=160
|
可以反映屏幕的清晰度,用于缩放UI的
|
Density(
密度)
|
屏幕里像素值浓度,resolution/Screen size可以反映出手机密度
|
|
Density-independent pixel (dip)
|
指的是逻辑密度计算单位,dip和具体像素值的对应公式是dip/pixel=dpi值/160
|
|
AndroidManifest.xml中指定图标,名字不一定非叫icon
<application android:icon="@drawable/icon" android:label="@string/app_name">
2.0以后有三种尺寸,分别为36*36/48*48/72*72
你会看到drawable-hdpi/drawable-ldpi/drawable-mdpi不同的目录用来存储不同尺寸的图标
,
在AndroidManifest.xml中只需要写@drawable/icon就可以,它会根据屏幕分辨率去找不同目录下的图标
hdpi里面主要放高分辨率的图片,如WVGA (480x800),FWVGA (480x854)
mdpi里面主要放中等分辨率的图片,如HVGA (320x480)
ldpi里面主要放低分辨率的图片,如QVGA (240x320)
类型 hdpi mdpi ldpi
ICON 72*72 48*48 36*36
Notification图标 48*48 32*32 24*24
标签Tab图标 48*48 32*32 24*24
九宫图 9 patch
http://www.cnblogs.com/slider/archive/2011/12/07/2279302.html
http://blog.sina.com.cn/s/blog_7501670601010mfl.html
分享到:
相关推荐
探究Android的多分辨率支持以及各种类型图标尺寸大小
android-support-v4-v7-v13-v14-v17(官方最新完整版),官方最新版的,压缩包内包含android-support-v4、android-support-v7-appcompat,android-support-v7-cardview,android-support-v7-gridlayout,android-support-...
使用VBOX安装安卓,运行速度那是一个快,辛辛苦苦安装好了安卓版的虚拟机,但启动后发现所有APP启动后都是横屏的,不但看起来累,鼠标操更加麻烦,下面就让我来教大家解决这个问题,让虚拟机安卓系统启动时自动竖...
android-sdk\platforms\android-21
Android 工程里面values文件夹有dimens.xml文件,为了适配不同的分辨率,例如values-sw400dp,values-sw600dp,values-sw720dp,如果自己去生成这几个文件夹,需要根据values里面的dimens.xml进行计算,然后修改,这个...
将android-17.zip解压到 Android\android-sdk\platforms 文件夹下。
http://s1.eoeandroid.com/sdk/4.1/android-sdk_r20-windows.zip(推荐) http://s1.eoeandroid.com/sdk/4.1/installer_r20-windows.exe Mac版: http://s1.eoeandroid.com/sdk/4.1/android-sdk_r20-macosx.zip ...
android-sdk\platforms\android-20
ksoap2-android-assembly-2.6.5-jar-with-dependencies.jar 要是需要最新的,下载地址: http://code.google.com/p/ksoap2-android/
第三步:开始写布局文件,写的时候如果有要设置大小,则不要直接写成如:android:layout_width:"20dp"的形式,应该写成:android:layout_width:"@dimen/DIG_20PX",注意这里如果是设置背景图片,则大小是图片的大小...
Android字体大小自适应不同分辨率的解决办法 今天有人问我,Android系统不同分辨率,不同大小的手机,字体大小怎么去适应呢?其实字体的适应和图片的适应是一个道理的。 一、原理如下: 假设需要适应320×240,480...
这是最新版的android-support-v4.jar,大小1MB多,比其它那种几百K的要大,因为这是最新的android-support-v4.jar,有最新的android.support.v4.view.animation类,现在是2015年10月,这是截至目前最新的jar包
使用CSS3-Media-Query技术适配Android平板屏幕分辨率和屏幕密度.docx
将android-18解压到Android\android-sdk\platforms下。
android-support-multidex解决Android Dex 65536 65k问题,解决方案来自严振杰的博客:http://blog.csdn.net/yanzhenjie1003/article/details/51818269
Android多分辨率适配,统一以px为单位,按照屏幕大小进行缩放适配。
Android 屏幕适配方案,自动生成不同分辨率的值
玩转Android多分辨率规格的界面设计
获取手机屏幕大小,屏幕分辨率,屏幕密度,导航栏高度,标题栏高度