【发布时间】:2021-02-26 18:06:44
【问题描述】:
有人知道使用sp 单位作为布局尺寸有什么问题吗?那么,假设我有一个16sp 文本,例如将TextView 高度设置为20sp 是否有任何问题,所以它会随文本缩放?
<TextView
android:textSize="16sp"
android:layout_width="match_parent"
android:layout_height="20sp"
...
这样,文本周围的填充在缩放后与文本大小保持成比例。此外,这对于自动调整大小很有用,不建议使用 wrap_content。
然而,official docs 声明 sp 不应该用于文本大小(尽管没有任何解释):
但是,在定义文本大小时,您应该改用可缩放 像素 (sp) 作为单位(但从不使用 sp 作为布局大小)。
这背后的原因是什么? dps 和sps 最终都会转换为特定设备的像素量,不是吗?那么核心区别是什么?
【问题讨论】:
标签: android android-layout android-xml android-xml-attribute