android 单位转换工具,Android单位转换工具类

王楚青
2023-12-01

Android单位转换工具类

Android单位转换工具类主要由以下4部分构成

1.这个类不能被初始化

2.dip转px接口

3.sp转px接口

4.px转dip接口

代码如下:

import android.content.Context;

import android.util.TypedValue;

/**

* Android单位转换工具类

*

* @author joyliu

*/

public class DensityUtil {

/**

* 不能初始化这个类

*/

private DensityUtil() {

throw new IllegalStateException("Do not instance”);

}

/**

* dip转换px

*

* @param context 上下文

* @param dpValue dip值

* @return px值

*/

public static int dip2px(Context context, float dpValue) {

final float scale = context.getResources().getDisplayMetrics().density;

return (int) (dpValue * scale + 0.5f);

}

/**

* sp转pd

*

* @param context 上下文

* @param spValue sp值

* @return px值

*/

public static int sp2px(Context context, float spValue) {

return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, spValue,

context.getResources().getDisplayMetrics());

}

/**

* px转换dip

*

* @param context 上下文

* @param pxValue px值

* @return dip值

*/

public static int px2dip(Context context, float pxValue) {

final float scale = context.getResources().getDisplayMetrics().density;

return (int) (pxValue / scale + 0.5f);

}

}

 类似资料: