从一开始写Android程序,就被告知这些常识

一、dp(或者dip device independent pixels)

一种基于屏幕密度的抽象单位。在每英寸160点的显示器上,1dp=1px。不同设备有不同的显示效果,这个和设备硬件有关。

二、sp(Scaled Pixels)

主要用于字体显示,与刻度无关的一种像素,与dp类似,但是可以根据用户的字体大小首选项进行缩放。

简单的说

长度宽度的数值要使用dp作为单位放入dimens.xml文件中

字体大小的数值要使用sp作为单位,也放入dimens.xml文件中

然后,就没有然后了,仿佛潜台词就是说,你记住去用就行了.

偶然有一天,当我们阴差阳错地将字体写成了dp,也是可以工作,而且效果和sp一样.

这时候,就开始怀疑了,到底有啥区别呢,dp和sp有什么不同呢?

我们做个简单的Sample验证一下,如下,一个布局代码

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:textSize="18sp"

android:text="Hello World! in SP" />

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:textSize="18dp"

android:text="Hello World! in DP"

/>

得到的效果是这个样子

但是,当我们进入系统设置中修改字体大小时

再次进入之前的界面,发现了一些不一样的东西.

由此看来

使用sp作为字体大小单位,会随着系统的字体大小改变

而dp作为单位则不会.

关于sp, 文档 的描述为:

Scale-independent Pixels – This is like the dp unit, but it is also scaled by the user's font size preference. It is recommend you use this unit when specifying font sizes, so they will be adjusted for both the screen density and the user's preference.

大致意思为

sp除了受屏幕密度影响外,还受到用户的字体大小影响

通常情况下,建议使用sp来跟随用户字体大小设置

因此通常情况下,我们还是建议使用sp作为字体的单位,除非一些特殊的情况,不想跟随系统字体变化的,可以使用dp.

摩客怎么设置安卓的dp_简单谈谈Android中SP与DP的区别相关推荐

  1. android 代码中使用dp,简单谈谈Android中SP与DP的区别

    从一开始写Android程序,就被告知这些常识 一.dp(或者dip device independent pixels) 一种基于屏幕密度的抽象单位.在每英寸160点的显示器上,1dp=1px.不同 ...

  2. android中sp的意义_简单谈谈Android中SP与DP的区别

    从一开始写android程序,就被告知这些常识 一.dp(或者dip device independent pixels) 一种基于屏幕密度的抽象单位.在每英寸160点的显示器上,1dp=1px.不同 ...

  3. 摩客怎么设置安卓的dp_摩客【操作攻略】

    很多小伙伴都遇到过摩客的困惑吧,一些朋友看过网上零散的摩客的处理方法,并没有完完全全明白摩客是如何解决的,今天小编准备了简单的解决办法,只需要按照 1:如图所示,我们所做的是一个登陆的简单的线框图,现 ...

  4. 摩客怎么设置安卓的dp_安卓的显示单位dp、dip、px、sp

    dp==dip:设备独立像素 .(device independent pixels) dip是年迈的dp,已经退休,在比较老的代码中还可以看到dip.目前谷歌推荐用dp,在我们开发安卓程序的时候,除 ...

  5. 摩客怎么设置安卓的dp_安卓屏幕完美适配方案——独家秘笈

    一.为什么要适配 由于Android系统的开放性,任何用户.开发者.硬件厂商.运营商都可以对Android系统和硬件进行定制,修改成他们想要的样子. 但是这种"碎片化"到达什么程度 ...

  6. 摩客怎么设置安卓的dp_摩客-官方版-摩客(Mockplus)V2.1.9.2-独木成林

    Mockplus--简洁高效的原型图设计,适合快速迭代的开发模式,无需学习.快速上手.功能强劲.支持安卓App.iOS App.Windows / MAC OS桌面程序和Web原型设计.其Web版和桌 ...

  7. 摩客怎么设置安卓的dp_Android中sp和dp区别

    --- title: Android中sp和dp区别 date: 2016-09-08 17:04:15 tags: Android categories: Android开发 --- ## 理解an ...

  8. 摩客怎么设置安卓的dp_Android屏幕适配——使用 dp 实现完美适配

    我们一直知道 Android 可以使用 dp.sp 完成简单的适配,那你真的理解了么?先来看几个问题: dp 是如何进行适配的? dp 和 px 是如何换算的? sp 和 dp 的区别? dp 适配为 ...

  9. 摩客怎么设置安卓的dp_Android下设置文字大小用sp还是dp

    相信很多人看到标题会大吃一惊,长度宽度的数值要用dp,字体的大小用sp,这个理论恐怕在大家心目中早已根深蒂固,官方文档 上也是这样写的 结论: 1.当修改系统字体大小时,字体大小以dp为单位时,大小不 ...

最新文章

  1. mysql操作json优点和缺点_SQL-mysql操作json
  2. arima模型_[不说人话系列]-ARIMA模型
  3. 若依框架如何进行单元测试
  4. CCF201612-1 中间数(解法三)(100分)(废除!!!)
  5. 上下文无关文法的组成
  6. 3650m5设置u盘启动_联想启天M425台式机设置u盘启动两种模式(支持uefi/bios双启动)...
  7. 三年出现三家上市企业 两轮电动车的生意好做吗?
  8. 单个html页面面包屑,充分利用网页设计中的面包屑
  9. 如何成为一名产品经理?这是我自学产品的8个方法
  10. 圆通快递单号免费查询接口,附带开发源码
  11. emlog模板 Meta主题带后台开源版 资源娱乐网模板
  12. hp服务器装系统键盘没反应,u盘装系统f12没反应怎么回事|u盘装系统按f12没反应怎么解决...
  13. 在k8s上部署cerebro访问集群外部署的es
  14. xgboost 论文
  15. 计算机窗口的大小是什么单位,电脑软件窗口大小调整
  16. 【转自Mster HaKu的博文】UML设计初步 - 基本概念一(actor, use case)
  17. 第六章 培养和谐的能力
  18. 参加ACM经历及总结
  19. CentOS 6 忘记密码,修改密码
  20. excel 数据的有效性检查

热门文章

  1. 【EF英孚教育】报道事故实用英文 12月30日
  2. Exchange Online功能介绍
  3. uniapp 生成商品分享通用海报源码详解
  4. 第二章 2.3 一阶逻辑等值式与前束范式
  5. 校园民谣二十年年祭(上)
  6. 计算机网络----什么是流量控制
  7. Go语言 闭包的最佳实践 (Golang经典编程案例)
  8. 安娜堡计算机工程光学专业,美国排名前12的电气电子工程专业研究生院校
  9. 我的理想作文400字计算机,我的理想作文400字(通用3篇)
  10. 【图像传感器】--- 半导体中的光电转换