0
如何從屏幕上顯示的多行EditText逐行獲取文本?如何從屏幕上顯示的EditText中獲取文本(帶行換行)
例如,如果在EditText中插入長文本(不包括\n
)它將顯示在幾行中。如何知道系統插入換行的位置?
如何從屏幕上顯示的多行EditText逐行獲取文本?如何從屏幕上顯示的EditText中獲取文本(帶行換行)
例如,如果在EditText中插入長文本(不包括\n
)它將顯示在幾行中。如何知道系統插入換行的位置?
它如果使用EditText.getLayout()
是可能的:
String text = editText.getText().toString();
List<String> lines = new ArrayList<>();
for (int i = 0; i< editText.getLayout().getLinesCount(); i++) {
lines.add(text.substring(editText.getLayout().getLineStart(i),
editText.getLayout().getLineEnd(i));
}
另外EditText.getLayout()
具有用於線的返回大小的方法:
getLineWidth()
getLineBounds()