根据字符串长度计数计算ems值

时间:2018-09-17 09:33:59

标签: android width textview ems

我想根据字符串或文本长度计数来计算ems值。如果增加文本长度,则应根据字符数占据其宽度大小,而不能在一行中截断文本,谢谢

试图将字符串的长度保持为ems,但是它提供了非常长的宽度,并且留有空白,谢谢

1 个答案:

答案 0 :(得分:0)

使用等宽字体,您可以计算字符串的em宽度。由于在其他情况下,像im这样的字母长度并不相同,因此无法预测像素/ em / dp计数。

如果有人要为字母的宽度编写复杂的逻辑,对它们进行计数,然后将计数与每个字母的长度相乘,则此解决方案在不作进一步改进的情况下仍然会太不准确:连字和字距调整使实际宽度变为这个词更加复杂。例如,A和V可以重叠一点,而紧跟另一个A的大写字母A或紧跟另一个V的字母V的宽度分别在底部或顶部。因此,它们的中心必须彼此远离,以免重叠。