Android单位转换工具类

来源:互联网 发布:深圳淘宝摄影 编辑:程序博客网 时间:2024/06/07 04:52

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);  }}