android textview高度与字号高度不一致

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android textview高度与字号高度不一致相关的知识,希望对你有一定的参考价值。

android:includeFontPadding="false"
即便是加上这个属性了,还是不一致。
下图是按照字体01/15设置字体大小为android:textSize="100px" ,但是实际测量出来的TextView高度是118px
<TextView
android:id="@+id/digit_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:background="#00FF00"
android:gravity="center"
android:includeFontPadding="false"
android:textSize="100px" />

高度和字号大小肯定是对不上号的。高度一般会大于实际字号的大小,举个简单的例子,比如:lg,这两个字,能看出来字的上下是有一个padding值的。因为l与g上下没有有对齐。同样的 Android中的字体大小是可以设置为PX的。SP只是为了适应不同分辨率进行的一个缩放,而如果设置了px 那么就不会进行缩放了。不同分辨率下看起就会不一样了。 参考技术A 在android中,textView的大小,不可能用 xp来设置的
google中提供了会用的字段单位,sp
你设置个 50sp好了
因为xp会有问题,原因很简单, 720*1280分辨率,有可能手机屏是 4.0 也有可能是 4.7 或者是5.0 5.5的屏幕,这样就会有很多问题,所以要用sp做单位追问

明白一般布局是需要用dp,字体用sp来保证不同尺寸分辨率设备的通用性。但是针对这个问题是什么原因?问题是个范围没有关系的

追答

那你就用SP吧,Android开发字体都用SP 或者 dp 没有人用px 的

本回答被提问者和网友采纳

以上是关于android textview高度与字号高度不一致的主要内容,如果未能解决你的问题,请参考以下文章

字体实际效果,FreeType的字号,对应Windows字体的高度

js 怎样获取字型的宽度和高度 比如9pt这样大小的文字

元素竖向的百分比设定是相对于容器的高度吗?

WPF DataGrid 如何动态设置单行高度

泰山OFFICE技术讲座:着重号的大小与字号关系

泰山OFFICE技术讲座:着重号的大小与字号关系