android中TextView的字体大小和高度有什么关系?

Per*_*qin 3 android

使用 RadioButton 时出现问题。RadioButton的layout_height必须是15dp,官方设计指南说1sp就是1dp,所以我把字体大小设置为1sp,但是TextView的layout_height比15dp要大一点。好像字体大小为15sp时,TextView的layout_height是18dp。那么字体大小和layout_height有什么关系呢?

Kon*_*nov 5

我想提到的第一件事是font-padding,它默认包含在TextView大小中。因此,要使TextView的大小更接近文本本身的大小 - 指定android:includeFontPadding="false"

现在,如果你比较Viewlayout_height等于20 SP和TextViewTextSize20SP -他们将几乎同样高。(差异很小,因为文本可能包含非常高的字母,如“Å”或低于基线的字母“y”)

关于 sp 与 dp。

Scale-independent Pixels - 这就像 dp 单位,但它也由用户的字体大小首选项缩放。建议您在指定字体大小时使用此单位,这样它们将根据屏幕密度和用户的喜好进行调整。

这取决于您的字体有多大(设置-> 辅助功能-> 启用/禁用大文本)。您可以更改它并查看效果。

希望能帮助到你。