前言
日常开发中,总是会不经意间发现或被别人告知一些神奇的 API 或某些共性问题的通用处理方式,在此记录一下。
居然还有这种 API ?
统计 TextView 内文本长度
1 | val len = realBinding.annText.paint.measureText(realBinding.annText.text.toString()) |
TextView.getPaint().measureText()
可以计算 TextView 中的文本内容的长度,注意这里有几种情况。
TextView 单行显示
- 文本内容在单行内可以完全显示
- 文本内容超过单行,同时又不能换行(可以理解为文本内容已经向右延伸到屏幕外了)
TextView 多行显示
这几种情况都是支持的,这个方法的统计结果就是 setText(content)
设置的 content 结合当前 TextView 的字体大小属性得到一个长度值,和 TextView 自身的宽高没有关系。