我为 spannableText 设置了 span 并将其设置为 TextView。在我想要获取此文本的宽度和高度之后。但是结果没有考虑到由于设置的跨度导致的文本大小的变化。 下一个解决方案是工作不正确。
return textView.getPaint().measureText(text, 0, text.length());
最佳答案
你应该创建一个 StaticLayout (或 StaticLayout.Builder 对于 API > 23)与您的文本并获取文本的宽度和高度。如果您不希望系统为您换行,您应该为宽度参数提供 Integer.MAX_VALUE。
创建 StaticLayout 后,您可以使用 getWidth()、getHeight()、getLineWidth() 等函数获取您要查找的信息。
关于android - 多个spannable设置时如何获取文本宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18896712/