package com.xjw.util; import android.content.Context; /** * 项目名称:translate * 实现功能: 显示设置相关工具类 * 类名称:DisplayUtil * 类描述:(该类的主要功能) * 创建人:徐纪伟 * E-mail: xujiwei558@126.com * 创建时间:2014年10月21日 下午9:45:18 * 修改人: * 修改时间: * 修改备注: * @version */ public class DisplayUtil { /** * @方法名称: px2dip * @描述: 将px值转换为dip或dp值 * @param @param context * @param @param pxValue * @param @return * @return int * @throws * @author 徐纪伟 * 2014年10月24日 下午9:59:08 */ public static int px2dip(Context context, float pxValue) { final float scale = context.getResources().getDisplayMetrics().density; return (int) (pxValue / scale + 0.5f); } /** * * @方法名称: dip2px * @描述: 将dip或dp值转换为px值 * @param @param context * @param @param dipValue * @param @return * @return int * @throws * @author 徐纪伟 * 2014年10月24日 下午9:59:53 */ public static int dip2px(Context context, float dipValue) { final float scale = context.getResources().getDisplayMetrics().density; return (int) (dipValue * scale + 0.5f); } /** * * @方法名称: px2sp * @描述: 将px值转换为sp值 * @param @param context * @param @param pxValue * @param @return * @return int * @throws * @author 徐纪伟 * 2014年10月24日 下午10:00:36 */ public static int px2sp(Context context, float pxValue) { final float fontScale = context.getResources().getDisplayMetrics().scaledDensity; return (int) (pxValue / fontScale + 0.5f); } /** * * @方法名称: sp2px * @描述: 将sp值转换为px值 * @param @param context * @param @param spValue * @param @return * @return int * @throws * @author 徐纪伟 * 2014年10月24日 下午10:01:01 */ public static int sp2px(Context context, float spValue) { final float fontScale = context.getResources().getDisplayMetrics().scaledDensity; return (int) (spValue * fontScale + 0.5f); } }
相关推荐
Android屏幕适配,包括px sp dp 转换等等
里面有详细的px值在不同分辨率下对应的sp值、dp值,用于UI适配,直接导入项目的资源文件目录下,通过R.dimen.xxx来进行引用,从此不用写多套布局文件,一套layout搞定。
文章目录一、简述二、追根溯源三、实现3.1 定义Density用于对系统类值的修改3.2 在MainActivity中调用3.3 处理应用程序关于字体大小的监听3.4...每个控件的显示,dp、sp等最终都会转换成px为单位,原因在于android源码T
Android屏幕适应的一种方案,包含自动生成xml文件jar包,自动替换dp,sp的jar包。顺便附带上源码。 背景说明 最开始使用dp设置控件尺寸,在hornor v8 1440x2560的手机显示正常,到了三星Galaxy On7 1080x1920的手机...
在Android中,定义组件尺寸的单位通常有dp和sp,那么它们跟我们经常使用的px有什么区别呢?px是Pixels的缩写,是常用的像素单位,对应的是屏幕上的点。移动设备的尺寸有很多种,它们的屏幕总像素也是不同的,使用px...
经常遇到这样的问题,设计师给的单位是px,而我们用的单位是dip或sp,所以交流经常出现问题。后来研究出一套方案,可以很好地适配,而且与设计师很好的沟通。...这样做我们就需要将px转成我们对应的dp,sp值了。
Dp和px的换算公式:px = dp * (dpi / 160)dp是与像素无关的,在实际使用中1dp大约等于1/160inch。目前所用方法1.使用dp、sp
Android单位转换工具类(ToolUnit.java),sp/dp/px互转 自定义Toast工具类(ToolToast.java),自定义背景色、字体颜色、大小、边框等 Properties操作工具类(ToolProperties.java),读写Properties文件操作 网络操作...
Android单位转换工具类(ToolUnit.java),sp/dp/px互转 自定义Toast工具类(ToolToast.java),自定义背景色、字体颜色、大小、边框等 Properties操作工具类(ToolProperties.java),读写Properties文件操作 网络操作...
Android单位转换工具类(ToolUnit.java),sp/dp/px互转 自定义Toast工具类(ToolToast.java),自定义背景色、字体颜色、大小、边框等 Properties操作工具类(ToolProperties.java),读写Properties文件操作 网络...
Android单位转换工具类(ToolUnit.java),sp/dp/px互转 自定义Toast工具类(ToolToast.java),自定义背景色、字体颜色、大小、边框等 Properties操作工具类(ToolProperties.java),读写Properties文件操作 网络...