【发布时间】:2014-07-21 18:53:54
【问题描述】:
当我使用时
android:textSizes="20dp"
在我的 textView 的 XML 中,我收到一条警告“对于文本大小,应该使用 "sp" 而不是 "dp"。”
为什么不应该使用“dp”?什么是正确的方法?如何在不同的显示器上实现相同的文本大小?
【问题讨论】:
-
sp 是相同的基本单位(与 dp 相同),但按用户首选的文本大小(它是与比例无关的像素)进行缩放,因此在定义时应使用此测量单位文本大小(但从不用于布局大小)。 Supporting Different Densities.
-
我知道其中的区别,但我不明白为什么我不能使用 dp 作为字体大小。我的意思是我想在不同的屏幕上具有相同的文本大小,否则在大型显示器上字体会变得非常小。那我怎样才能使文本以相同的大小出现呢?
-
@Rotwang 警告“避免使用小于 12 sp:10sp 的尺寸”
-
我很惊讶没有人提到 sp 可能会导致不一致的 ui 设计,除非您对其进行非常严格的编码,例如框的高度无法在 dp 中固定,因为它的文本视图在 sp 中。
-
谁知道用 AS 将所有 textSize dp 转换为 sp 的快速方法?
标签: android android-layout textview