reference to  : http://blog.csdn.net/voo00oov/article/details/45745819

这个方法的作用是 把Android系统中的非标准度量尺寸转变为标准度量尺寸 (Android系统中的标准尺寸是px, 即像素)

Android系统中的尺寸单位有:

这个方法的作用是 把Android系统中的非标准度量尺寸转变为标准度量尺寸 (Android系统中的标准尺寸是px, 即像素)

Android系统中的尺寸单位有:

标准单位: px (px是安卓系统内部使用的单位, dp是与设备无关的尺寸单位 )

非标准单位: dp, in, mm, pt, sp

TypedValue.applyDimension()方法的功能就是把非标准尺寸转换成标准尺寸, 如:

dp->px:  TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 20, context.getResources().getDisplayMetrics());

in->px: TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_IN, 20, context.getResources().getDisplayMetrics());

mm->px: TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_MM, 20, context.getResources().getDisplayMetrics());

pt->px: TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_PT, 20, context.getResources().getDisplayMetrics());

sp->px: TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, 20, context.getResources().getDisplayMetrics());

如果你还是不太理解, 请看applyDimension()方法的源码:

/*** Converts an unpacked complex data value holding a dimension to its final floating * point value. The two parameters <var>unit</var> and <var>value</var>* are as in {@link #TYPE_DIMENSION}.*  * @param unit The unit to convert from.* @param value The value to apply the unit to.* @param metrics Current display metrics to use in the conversion -- *                supplies display density and scaling information.* * @return The complex floating point value multiplied by the appropriate * metrics depending on its unit. */
public static float applyDimension(int unit, float value,DisplayMetrics metrics)
{switch (unit) {case COMPLEX_UNIT_PX:return value;case COMPLEX_UNIT_DIP:return value * metrics.density;case COMPLEX_UNIT_SP:return value * metrics.scaledDensity;case COMPLEX_UNIT_PT:return value * metrics.xdpi * (1.0f/72);case COMPLEX_UNIT_IN:return value * metrics.xdpi;case COMPLEX_UNIT_MM:return value * metrics.xdpi * (1.0f/25.4f);}return 0;
}

[Android Pro] Android TypedValue.applyDimension()的用法相关推荐

  1. [Android Pro] Android 6.0 Root

    reference : http://bbs.gfan.com/android-8001827-1-1.html 2. 刷机和刷入recovery 建议参考 置顶教程: [15年3月31日更新]Nex ...

  2. [Android Pro] Android保存图片到系统图库

    http://stormzhang.github.io/android/2014/07/24/android-save-image-to-gallery/ http://blog.csdn.net/x ...

  3. [Android Pro] Android 6.0 Root

    reference : http://bbs.gfan.com/android-8001827-1-1.html 2. 刷机和刷入recovery 建议参考 置顶教程: [15年3月31日更新]Nex ...

  4. [Android Pro] Android源码编译之Nexus5真机编译

    reference to : http://blog.csdn.net/liu1075538266/article/details/51272398 1.   前言 在Android安全的研究工作中, ...

  5. [Android Pro] Android下toolbox简介

    toolbox是Android 自带的提供shell命令的软件.有点类似于busybox,但功能上好像弱很多. 其源码可以从Android source code 中system/core/toolb ...

  6. [Android Pro] Android源码编译后,再重编译所需要做的清理工作

    1.在源码目录的根目录下,make clean; 2.进到源码的\linux\kernel\目录下,执行make mrproper: 3.再退回到根目录,执行source  build/envsetu ...

  7. [Android Pro] 有关Broadcast作为内部类时注册的一些问题

    很经常Broadcast都会写成一个Activity或者Service的内部类.这时候的注册和普通有点小区别. 有两种情况 1.假如是再Manifest文件里面静态注册的话,需要注意. ex: < ...

  8. [Android Pro] 精确记录和恢复ListView滑动位置

    reference to : http://blog.csdn.net/welovesunflower/article/details/7926512 工作中遇到一个需求,对ListView某一项操作 ...

  9. [Android Pro] ScrollView使用fillViewport设置高度为MatchParent

    reference to : http://blog.csdn.net/u012975705/article/details/49275001 之前遇到一问题,就是当使用ScrollView时,Scr ...

最新文章

  1. [原][osg]osgconv浅析
  2. Nginx之负载均衡
  3. 初识Lock与AbstractQueuedSynchronizer(AQS)
  4. 小米笔记本充电实测追求速度牺牲兼容性小米笔记本充电驱动_是海尔?也是雷神?不足1千克MixBook Air超轻薄笔记本...
  5. nginx下面server配置
  6. Office Web Apps安装部署(一)
  7. 一千万条数据去重_simhash算法:海量千万级的数据去重
  8. python xlutils教程_python xlutils复制表格使用方法
  9. 利用Exchange 2003实现移动办公新体验
  10. 一个简单的TCP客户/服务器的程序
  11. laravel响应速度慢
  12. 一个简易Android购物App的开发
  13. HDU-1869 六度分离 (矩阵的幂运算求通路个数)
  14. #笔记(三十二)#dvwa漏洞wp
  15. PPT“备注”内容字体可以修改颜色也能直接看到修改效果
  16. java注解约束参数为固定值_java自定义注解的实现及属性设置
  17. PDF转图片怎么转?分享两种转换小技巧
  18. STM32F1案例 ST7735 TFT液晶显示屏综合库使用
  19. 远心镜头参数之一:远心镜头景深计算
  20. Linux uptime 命令(75)

热门文章

  1. C# 窗体 TreeView控件
  2. React基本使用、React脚手架的使用
  3. 【ESP 保姆级教程】疯狂传感器篇 —— 案例:Mega + ESP8266 + MQ2烟雾 + MQ3酒精 + MQ7一氧化碳+ OLED + 巴法云 + 微信小程序(环境监控)
  4. 来自卡内基梅隆计算机科学系主任的回复
  5. [C#问题--WebBrowser继续追踪]WebBrowser在Form程序中使用的感想2
  6. 异常处理-No SecurityManager accessible to the calling code
  7. 黑莓9650 meego主题
  8. 软件测试的核心竞争力是什么?
  9. 微信企业号_智能机器人_python3
  10. 【个人笔记】嵌入式多种通讯方式总结