sp,dp,px,pt的区别以及各自的用法

 我来答
天然槑17
2022-07-03 · TA获得超过1.1万个赞
知道大有可为答主
回答量:6569
采纳率:100%
帮助的人:38.1万
展开全部
dp:就是dip(device independent pixels)设备独立像素,与密度无关的像素。一种基于屏幕密度的抽象单位。在每英寸160点(屏幕密度为160)的显示器上,1dp=1px;

sp:与刻度无关的像素。主要用于定义字体的大小,而从来不再layout上使用。与dp相似,但是可以根据用户的字体大小首选项进行缩放,即sp除了与密度无关外,还与scale(缩放)无关。当屏幕密度为160时,1dp=1sp=1px;

px:屏幕的实际像素。一般不用它作为单位,因为它会在不同的设备显示相同的效果。

in:英寸。

mm:毫米。

pt:磅。1/72英寸。

dp和sp能够自动的随屏幕的变化而变化。因此,为了使用户界面能够在现在和将来的显示器类型上正常的显示,建议始终使用sp作为文字大小的单位,将dp作为其他元素的单位。

package com.hujl.util;

import android.content.Context;

public class DensityUtil {

/**

* 根据手机的分辨率从 dp 的单位 转成为 px(像素)

*/

public static int dip2px(Context context, float dpValue) {

final float scale = context.getResources().getDisplayMetrics().density;

return (int) (dpValue * scale + 0.5f);

}

/**

* 根据手机的分辨率从 px(像素) 的单位 转成为 dp

*/

public static int px2dip(Context context, float pxValue) {

final float scale = context.getResources().getDisplayMetrics().density;

return (int) (pxValue / scale + 0.5f);

}

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
华瑞RAE一级代理商
2024-04-11 广告
impulse-4-xfxx是我们广州江腾智能科技有限公司研发的一款先进产品,它结合了最新的技术创新和市场需求。此产品以其卓越的性能和高效的解决方案,在行业内树立了新的标杆。impulse-4-xfxx不仅提升了工作效率,还为用户带来了更优... 点击进入详情页
本回答由华瑞RAE一级代理商提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式