自定义View之尺寸的转化
发布日期:2021-10-10 12:51:17 浏览次数:8 分类:技术文章

本文共 893 字,大约阅读时间需要 2 分钟。

自定义View之尺寸的转化


  在Android的布局文件中,往往使用dp作为控件的宽度和高度尺寸,但是在Java代码中,文字大小或者组件尺寸的单位却是像素px,这两个单位有明显的区别:dp和屏幕的密度有关,而px,sp与屏幕密度无关,所以使用时经常会涉及到两者之间的互相转化 :

dpi转px

public static int Dp2Px(Context context, int dpi) {        return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dpi, context.getResources().getDisplayMetrics());    }

px转dp

public static int Px2Dp(Context context, int px) {        return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_PX, px, context.getResources().getDisplayMetrics());    }

sp转px

public static int Sp2Px(Context context, int sp) {        return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, sp, context.getResources().getDisplayMetrics());    }

px转sp

public static int Px2Sp(Context context, int px) {        return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_PX, px, context.getResources().getDisplayMetrics());    }

附上工具类下载:

转载地址:https://blog.csdn.net/qq_26971803/article/details/51988853 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Android手机刷机操作相关记录
下一篇:Android从零开始的开源项目-口袋代码-1.启动界面

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2024年03月27日 00时40分00秒