dip,dp, px, sp, dpi, width, height的解释及用法

width   屏幕水平方向能摆放的像素点数,称为分辨率(width*height)

height 屏幕垂直方向能摆放的像素点数,称为分辨率(width*height)

dip/dp (device independent pixels)  设备独立像素,与屏幕设备无关; 谷歌引用的一个单位,用于适应不同分辨率的终端设备;

px(pixels)  像素,屏幕的实际像素点单位;

sp(scaled pixels)  一般用于字体

dpi(dot per inch)  每一英寸的点数


手机上默认的正常的dpi为160,电脑的一般为96dpi,即一英寸里有160个点;若设备屏幕的固定物理尺寸为3.5,而屏幕分辨率越大,则dpi越高;

dpi = width/物理宽(height/物理高)

density = dpi/160    (见DisplayMetrics.java里的 density = DENSITY_DEVICE / (float) DENSITY_DEFAULT;)

dip/dp与px的换算公式: px = dip * density


手机默认的dpi为160,如果想设置其他的dpi,可以通过设置配置文件改变的dpi值:

可在源码的build\tools\buildinfo.sh中加入echo  "ro.sf.lcd_density=你想设置的值(如200)"

或者设置qemu.sf.lcd_density的值,都可改变dpi

系统会根据DisplayMetrics.java里的getDeviceDensity来获取dpi的值;


应用工程中的xdpi, hdpi,mdpi,ldpi对应的就是DisplayMetrics.java里的DENSITY_XHIGH = 320, DENSITY_HIGH=240, DENSITY_MEDIUM=160,DENSITY_LOW=120



更多相关文章

  1. Android屏幕自适应4种解决方案
  2. Android(安卓)UI开发初阶--期末考试Android理论筛查
  3. Mac Android(安卓)屏幕同步/共享投影工具[Vysor]
  4. 一行代码搞定Android屏幕适配
  5. Android(安卓)屏幕适配(1)
  6. Android(安卓)中的DisplayMetrics类的用法
  7. Android图片自适应不同分辨率屏幕问题
  8. Android全面屏显示不全下方有黑色解决方案
  9. Android自适应屏幕方向、大小和分辨率之补充

随机推荐

  1. Android实现的截屏小程序示例
  2. android 如何结束一个线程?
  3. android 模拟器的app以及app market(菜市
  4. Android实现图片随手指旋转功能
  5. Android轻量级开源缓存框架——ASimpleCa
  6. Android(安卓)Studio 图片资源存放位置 +
  7. FaceBook推出的Android图片加载库-Fresco
  8. EditText & IME (一)
  9. Android(安卓)录音获取麦克风实时音量
  10. Android(安卓)Studio 更新