px(pixels)——像素:不同的设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多。

dip(device independent pixels)——设备独立像素:这个和设备硬件有关,一般哦我们为了支持WCGA、HVGA和QVGA推荐使用这个,不依赖于像素。等同于dp。

sp(scaled pixels—best for text size)——带比例的像素。

pt(points)——磅:1pt = 1/72英寸

in(inches)——英寸

mm(millimeters)——毫米

到底px和dip有什么区别呢?

dip!= px

主要是针对不同设备而言的
在Density是160的设备上,比如用AVDManager创建的默认模拟器,dip和px是一样的
但是如果同样的代码,换到不同Density的设备上,比如换到一个Density是240的设备上,dip和px体现出来的大小就不一样了
px不管在什么样的设备上都是那样长,但是dip会根据设备变化

WQVGA屏density=120;QVGA屏density=120;HVGA屏density=160;WVGA屏density=240;

density值表示每英寸有多少个显示点,与分辨率是两个概念。

当屏幕density=240时使用hdpi标签的资源

当屏幕density=160时,使用mdpi标签的资源

当屏幕density=120时,使用ldpi标签的资源。

不加任何标签的资源是各种分辨率情况下共用的。

布局时尽量使用单位dip,少使用px

换算公式为pixs =dips * (densityDpi/160).

dips=(pixs*160)/densityDpi

如何获得设备的屏幕分辨率和屏幕密度:

如分辨率为480*800,密度为240的设备

DisplayMetrics dm =getResources().getDisplayMetrics();

dm.densityDpi=240

dm.widthPixels=480

dm.heightPixels=800

更多相关文章

  1. PX(像素)转换工具类
  2. 开发者必读jQuery Mobile入门教程
  3. android系统对linux内核的主要补丁
  4. Android(安卓)launcher3布局和结构
  5. Android(安卓)屏幕(View)坐标系统
  6. android保持屏幕常亮以及唤醒屏幕的方式
  7. android drawText/drawLines不显示的原因
  8. 【Orientation】详解Android中的屏幕方向
  9. android 高斯模糊实现以及性能比较

随机推荐

  1. NestedScrollView嵌套RecyclerView最后一
  2. ndk 编译android内核模块无法加载 解决方
  3. 【已解决】Android(安卓)Studio下,gradle
  4. Android腾讯微博开发之随机字符串与签名
  5. android 开发是 页面JS调用后台java方法
  6. android中文api(79)——Gallery
  7. android 混淆文件proguard.cfg详解
  8. android开发常用小知识点整理
  9. Android(安卓)keytool 生成证书MD5指纹
  10. android 自定义的AlertDialog强化版