Android TextView и получение строки текста

У меня есть TextView, текст которого может работать во многих строках. Когда он будет создан и настроен динамически, я хотел бы

  • Получить текст по данной строке и
  • Знайте ширину и высоту этой строки.

Как это сделать?

Ответ 1

Если я правильно понимаю ответ на вопрос 2:

textView.getLineBounds (int line, Rect bounds)

Ширина в пикселях должна быть abs(bounds.right - bounds.left); и высота abs(bounds.bottom - bounds.top)

Ваш первый вопрос немного сложнее, но что-то вроде этого должно сделать требуемую магию:

Layout layout = textView.getLayout();
String text = textView.getText().toString();
int start=0;
int end;
for (int i=0; i<textView.getLineCount(); i++) {
    end = layout.getLineEnd(i);
    line[i] = text.substring(start,end);
    start = end;
}