Andorid dp sp px

本文详细介绍了Android开发中常用的尺寸单位dp和sp的概念,它们与像素px的关系,以及如何在代码中进行转换。dp是设备无关像素,保证了不同分辨率屏幕上的元素大小一致,而sp主要用于字体大小,会随系统字体设置调整。通过App资源获取的density,可以方便地进行dp与px之间的换算,确保界面适配。在实际开发中,通常使用px设置具体尺寸,而dp和sp用于实现更好的用户体验。

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

  1. dp:像素无关,尺寸有关,同样尺寸不同分辨率的同样dp,是一样大的
  2. sp:跟dp差不多,只不过是用来设置字体的,会随之系统设置字体的变化而变化,例如:如果同样用dp、sp设置了同样大小的字体,系统改为大字体之后,dp设置的字不会变化,sp设置的会变大
  3. dp、px的关系取决于density(像素密度,单位dp内有多少px),density=1时,1dp=1px;density=2时,1dp=2px。。也就是说,1dp=density个px;
    float density = App.getAppContext().getResources().getDisplayMetrics().density;
    那么则有,可推出dp转px:px = dp *density;px转dp:dp = px / density;如果美工(设计)给的px标注,你想用dp单位适配,这不就妥了嘛
  4. 代码里面设置宽高间距啥的基本都是px,如果想要用dp设置,需要先转换成px。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值