如何在Edittext android中获取第一行的长度?

时间:2015-12-23 18:06:40

标签: android

我有一个包含文字的多行Edittext(不要内容" \ n"),字体大小(sp) 和文本的长度> Edittext.width()。 我想获得EditText中第一行的长度。 我该怎么办?

You can see the photo

1 个答案:

答案 0 :(得分:3)

一个选项可能是读取文本然后获取换行符的索引,这基本上是前面字符串的长度:

int firstLineLength = myEditText.getText().toString().indexOf("\n");

作为替代方案,如果您需要使用其他行执行此操作,则只需根据换行符分割整个字符串:

String[] lines = myEditText.getText().toString().split("\n");

修改

请记住,如果找不到匹配项,indexOf()将返回-1。因此,如果您的EditText只有一个字符串,那么您将获得-1行长度,因此请准备好检查:

int lineEndIndex = myEditText.getText().toString().indexOf("\n");
int firstLineLength;
if(lineEndIndex == -1) {
   firstLineLength = myEditText.getText().toString().length();
} else {
   firstLineLength = lineEndIndex;
}