Android工具类系列-DensityUtil(尺寸单位转换)

来源:互联网 发布:烟筒防风帽制作数据 编辑:程序博客网 时间:2024/05/29 18:13

原文地址:
http://blog.csdn.net/lmj623565791/article/details/38965311

这个工具类用于尺寸转换,相信大家都了解。主要是:dp2px, px2dp, sp2px, px2sp。

package org.yxm.android.utils;import android.content.Context;import android.util.TypedValue;/** * Created by yxm on 16-6-23. */public class DensityUtil {    private DensityUtil() {        throw new UnsupportedOperationException("cannot be instantiated");    }    /**     * dp转px     */    public static int dp2px(Context context, float dpVal) {        return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,                dpVal, context.getResources().getDisplayMetrics());    }    /**     * sp转px     */    public static int sp2px(Context context, float spVal) {        return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP,                spVal, context.getResources().getDisplayMetrics());    }    /**     * px转dp     */    public static float px2dp(Context context, float pxVal) {        final float scale = context.getResources().getDisplayMetrics().density;        return (pxVal / scale);    }    /**     * px转sp     */    public static float px2sp(Context context, float pxVal) {        return (pxVal / context.getResources().getDisplayMetrics().scaledDensity);    }}
0 0