【达内课程】dp转px

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010356768/article/details/89876253

【达内课程】自定义控件(文字阴影)中设置了文字大小为48,这里的48是px,也就是像素,而我们平时设置大小用的是dp

现在在布局上放置一个TextView,设置TextSize为48dp,我们观察下效果
在这里插入图片描述

看一下dp和px的关系
第一个字段表示每英寸有多少个像素点。1英寸 = 2.54厘米。
在这里插入图片描述
解决办法

写一个dp转px的方法

public class DisplayUtils {
    public static int dp2px(Context c,int dp){
        float scale = c.getResources().getDisplayMetrics().scaledDensity;
        return (int)(scale*dp);
    }
}

使用

textSize = DisplayUtils.dp2px(getContext(),(int)textSize);

效果
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/u010356768/article/details/89876253