fun setContent(content: String?) {
data.content = content
contentTv?.apply {
//比较是否超出了一行
post {
paint.textSize = textSize
val exceedOneLine = paint.measureText(content) > width
setLines(if (exceedOneLine) 2 else 1)
}
}
contentTv?.text = content
}
Какая польза?
Например, когда дизайн пользовательского интерфейса имеет фиксированную высоту, а TextView должен быть центрирован и не может превышать 2 строки, поскольку длина текста неизвестна, невозможно определить, использовать ли 1 строку или 2 строки, и это трудно добиться центрирующего эффекта. Следовательно, пока количество строк задается динамически, проблема может быть решена.