Android-dp和px的相互转换

package com.leo.baselayout.Util;

import android.content.Context;

/***
 * 该类主要用于dp和px的转换
 * 在XML中除了字体用sp单位之外,其余的都用dp
 * (字体最好要用sp,使用了sp的字体,在系统设置里更改了字体大小后,应用里的字体大小也会更改)
 * 但是在代码中 都要用px为单位
 */
public class DpToPxUtil {
    /**
     * dp转px
     *
     * @param context
     * @param dp
     * @return
     */
    public static int dipToPx(Context context, float dp) {
//        获取手机屏幕像素密度
        final float scale = context.getResources().getDisplayMetrics().density;
        return (int) (dp * scale + 0.5f);
    }

    /**
     * px转dp
     *
     * @param context
     * @param px
     * @return
     */
    public static int pxToDip(Context context, float px) {
//        获取手机屏幕像素密度
        final float scale = context.getResources().getDisplayMetrics().density;
        return (int) (px / scale + 0.5f);
    }
}

 

全部评论

相关推荐

没有offer的小土豆:专业面试一般是分配面试官然后联系你面试 应该是还没给你分配对应面试官
点赞 评论 收藏
分享
冲芭芭拉鸭:你这图还挺新,偷了。
投递美团等公司10个岗位
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务