getLineCount方法返回错误值

时间:2018-12-11 14:11:43

标签: android android-edittext

TextView(左)显示EditText(右)中的行数(使用getLineCount方法)。但是,即使只有1行,getLineCount方法也会返回2值。最初,它返回1,但是一旦视口中填充了字符并添加了另一个字符,它将立即返回2。请注意,EditText位于Horizo​​ntalScrollView内部,因此文本不会换行到下一行。我添加了图片以有效地解释这一点。 https://i.stack.imgur.com/BNABs.png https://i.stack.imgur.com/WJ2BW.png

1 个答案:

答案 0 :(得分:0)

getLineCount()在内部使用StaticLayout或DynamicLayout来测量内容,并且不一对一地反映EditText。我不确定测量的详细信息,但显然您对按行结尾的行数感兴趣。如果是这样,您可以只计算文本中的行尾并添加1。请参阅:Count the number of lines in a Java String