您的位置:首页 > 移动开发 > Android开发

android 像素转换

2015-09-28 12:31 561 查看
import android.content.Context;
 

import android.util.TypedValue;  

  

/** 

 * 常用单位转换的辅助类 

 */  

public class DensityUtils  

{  

    private DensityUtils()  

    {  

        /* cannot be instantiated */  

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

    }  

  

}  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: