android 获取textview的高度,Android TextView 高度问题

本文探讨了在Android开发中遇到的TextView高度问题,详细解释了TextView高度由包括字体内填充和行高在内的因素决定,并提供了如何获取行高、禁用内填充以及文字绘制的相关代码示例。
摘要由CSDN通过智能技术生成

参考:https://www.cnblogs.com/tc310/p/12721754.html

前言:

在我们做界面开发的时候,UI的标注图中经常是标注了文字的字号和文件的间距。而当我们使用多个TextView 实现后,却发现textView 之间的空白区域的高度,是远大于设计标注的。

前提: TextView height = warp_content。 设为单行。

原因: TextView 高度包含 1) IncludedFontPadding  2,Line height;

而LineHeight 也并不是文字字号高度,并且也大于字号高度。

TextView textView = (TextView) findViewById(R.id.sample_text);

textView.setBackgroundColor(Color.YELLOW);

textView.setTextSize(TypedValue.COMPLEX_UNIT_PX , 60);

1,关于行高获取:

intht = textView.getLineHeight();

这个高度的获取,并不需要对当前的Text 进行测量。 与当前的TextSize 正相关。

2,

textView.setIncludeFontPadding(false);

可以通过这个方法,禁掉首行文字和末行文字的font padding。 需要验证是否对行高也有影响。

if (includepad) {

spacing = metrics.bottom - metrics.top;

mDesc = metrics

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值