Android推荐使用的尺寸单位dp和sp

本文详细介绍了Android开发中常用的尺寸单位,包括dp、sp、pt、px、mm和in,并解释了它们之间的区别及应用场景。文章强调了dp和sp在不同分辨率屏幕上的优势,推荐在布局设计时使用dp,在字体大小设定时使用sp。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、前言

在Android中有一个专门用来讲解这些尺寸单位的指导。参考官网Dimension 。

2、尺寸(dimension)

    10px,2in,5sp等等带有单位的就是尺寸资源,Android中支持如下的用来测量长度的尺寸资源:dp、sp、pt、px、mm和in。

    dp (Density-independent Pixels)与密度无关的像素,基于屏幕密度的抽象单位。在每英寸160个点的屏幕上,1dp与1px大致相等。当运行在更高/更低密度的屏幕上,1dp中的像素数根据屏幕的dpi(dots per inch)数而按比例决定。这个dp与(pixel)像素比例根据屏幕密度而变化。使用dp单位(而不是px单位) 是一个简单的解决方法,使我们的布局能自适应不同的屏幕密度,在不同的设备间能保持一致的展示真实的UI元素的尺寸。

    sp (Scale-independent Pixels)与刻度无关的像素,与dp类似,建议使用sp来用于用户的字体,这样也可以根据屏幕密度和用户的字体大小设置来调整。 

    pt (Points )是1/72 in(英寸)。

    px (Pixels )是像素,屏幕上的真实像素,在真实环境中,使用不同的设备显示时,不建议使用。不同的设备显示效果不同。

    mm (Millimeters)是毫米

    in (Inches)是英寸(Inches,1英寸=25.4毫米)

    以上涉及到2个专业的术语:“与密度无关”的像素,“与刻度无关”的像素。这个应该是和位图和矢量图有关吧(不太懂。O 。)。

3、到底改用哪个单位呢?

    其实2中已经说明了各单位应该使用的场景了。因为现在的显示器支持不同的分辨率,所以为了在不同的分辨率上显示达到一致的效果从而就有了dp和sp两个单位了。

    总结: 表示字体的大小的时候使用sp为单位,其他情况都是用dp作为单位。

4、dp与px的转换sp和px的转换

    这个根据显示器的分辨率来做相关的转换即可。

转载于:https://my.oschina.net/jast90/blog/346706

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值