方法一:

public int sp2px(float sp) {return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, sp,getResources().getDisplayMetrics());
}public float dip2px(int dip) {return TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dip, getResources().getDisplayMetrics());
}private int px2dp(int px) {return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_PX, px, getResources().getDisplayMetrics());
}

方法二:

public static int dip2px(int dp) {float density = getContext().getResources().getDisplayMetrics().density;return (int) (dp * density + 0.5);
}public static int px2dip(int px) {final float scale = getContext().getResources().getDisplayMetrics().density;return (int) (px / scale + 0.5f);
}public static int px2sp(int pxValue) {final float fontScale = getContext().getResources().getDisplayMetrics().scaledDensity;return (int) (pxValue / fontScale + 0.5f);
}public static int sp2px(int spValue) {final float fontScale = getContext().getResources().getDisplayMetrics().scaledDensity;return (int) (spValue * fontScale + 0.5f);
}

dp,sp,px相互转化相关推荐

  1. android中的长度单位介绍(dp,sp,px,in,pt,mm)

    作为小白学习了一段时间的android,在学习过程中却一直有个疑问,在设置控件大小时面对这几个单位却不知如何选择,查找相关资料后了解了其含义,今天来分享下 dp或dip(device independ ...

  2. Android 获取屏幕宽度,dp,sp,px转换方法

    获取屏幕宽度 WindowManager wm = this.getWindowManager(); //this 指代当前的activity DisplayMetrics dm= new Displ ...

  3. New UI-常用计量单位px,dp,sp,pt解析与转换

    New UI-常用计量单位px,dp,sp,pt解析与转换            --转载请注明出处:coder-pig,欢迎转载,请勿用于商业用途! 小猪Android开发交流群已建立,欢迎大家加入 ...

  4. android 字体px转sp,Android中px,dp,sp区别及换算

    px,dp,sp是Android中常用的距离单位. 基本概念: 屏幕尺寸:指的是屏幕对角线长度,用英寸(in)作为单位,1 in = 2.54 cm. 屏幕分辨率:在横纵向上的像素点数,单位px.一般 ...

  5. 设计中涉及到的dip、dp、px、sp等单位说明

    在进行UI设计中常会遇到各种数值单位,开始使用时也常搞混,于是搜集了单位解说的文章与大家一同分享 dip: device independent pixels(设备独立像素). 不同设备有不同的显示效 ...

  6. Android的单位px,pt,dp,sp总结和获取屏幕分辨率

    px: pixels(像素). 是屏幕中可以显示的最小单位元素,px是设备密度有关的,不同设备显示效果不同.因为由于不同的设备密度不同,密度就是单位英寸的像素不同,在不同的手机上显示的大小就不同 pt ...

  7. Android之px 与 dp, sp换算公式

    px: pixels(像素). 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多. pt: point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用 ...

  8. android 字体像素转换工具类_android px,dp,sp大小转换工具

    package com.voole.playerlib.util; import android.content.Context; /** * Android大小单位转换工具类 * * float s ...

  9. [forwarding]Android上dip、dp、px、sp等单位说明

    dip  device independent pixels(设备独立像素). 不同设备不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA.HVGA和QVGA 推荐使用这个,不依赖像素. 在 ...

最新文章

  1. Yii2配置Nginx伪静态的方法
  2. linux安装web服务器httpd,Linux_linux构建动态WEB服务器安装篇,基本配置 安装web服务器:httpd-2. - phpStudy...
  3. 通过js判断不同终端类型,跳转到不同的页面
  4. 初学__Python——Python的基本输入输出函数
  5. zpl代码可以编译的特殊字符_国际C语言混乱代码大赛(IOCCC)代码解析
  6. 数据分析与挖掘理论-数据探索
  7. CSS 盒子的边距塌陷
  8. 如果每一种语言都对应一种女生,你会喜欢哪一个?
  9. Java HashSet和HashMap源码剖析
  10. c++调用cplex求解例子_视频教程 | 用Python玩转运筹优化求解器IBM CPLEX(二)
  11. ICCV2021- 牛津大学新的预训练视频文本数据集WebVid-2M,设计用于端到端检索的联合视频和图像编码器!代码已开源!...
  12. 微信消息推送之过长的文本消息拆分踩坑
  13. poco http使用
  14. Ryzen3 2200g安装Debian11.1后配置VBox
  15. 01-图灵商城项目架构
  16. JS判断客户端是否是iOS或者Android手机移动端
  17. 用PanDownload出现无法下载文件,资源分配失败
  18. 【推荐】Windows安装的几种工具
  19. virtualbox安装虚拟机后,虚拟机不显示ip问题
  20. 亚马逊测评成号率会高吗?亚马逊测评技术IP详解篇

热门文章

  1. 并发 vs 并行 (Concurrency Is Not Parallelism)
  2. QT学习之状态机框架
  3. javascript的知识总结
  4. BERT大火却不懂Transformer?读这一篇就够了 重点 命名实体识别
  5. Pytorch学习记录-torchtext和Pytorch的实例( 使用神经网络训练Seq2Seq代码)
  6. The bean 'xxxx.FeignClientSpecification', defined in null, could not be registered. A bean with that
  7. LeetCod中等题之复数乘法
  8. CPU0 处理器的架构及应用
  9. TVMNN编译Compiler栈
  10. NVIDIA GPU上的直接线性求解器