本文主要是介绍dp和px的转化(dp2px,px2dp),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
public class DensityUtil {/*** 根据手机的分辨率从 dp 的单位 转成为 px(像素).** @param dpValue dpValue* @return px*/public static int dp2px(float dpValue) {return (int) Math.ceil(TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_PX, dpValue, Resources.getSystem().getDisplayMetrics()));}/*** 根据手机的分辨率从 px(像素) 的单位 转成为 dp.** @param pxValue pxValue* @return dp*/public static int px2dp(float pxValue) {return (int) Math.ceil(TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, pxValue, Resources.getSystem().getDisplayMetrics()));}/*** sp转像素 .** @param spValue .* @return .*/public static int sp2px(float spValue) {final float fontScale = Resources.getSystem().getDisplayMetrics().scaledDensity;return (int) (spValue * fontScale + 0.5f);} }
这篇关于dp和px的转化(dp2px,px2dp)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!