fun TextView.breakLetter() {
// original Text
var processingString = text.toString()
var availableLetterCount = 0
val stringBuilder = StringBuilder()
while (availableLetterCount < processingString.length) {
availableLetterCount =
paint.breakText(processingString, true, maxWidth.toFloat(), null)
val processedString = processingString.substring(0, availableLetterCount) + "\n"
stringBuilder.append(processedString)
processingString = processingString.substring(availableLetterCount)
while (processingString.first() == ' ') {
processingString = processingString.removeRange(0, 1)
}
}
stringBuilder.append(processingString)
text = stringBuilder.toString()
}
Last active
October 16, 2018 00:33
-
-
Save Zimins/56c3efa1bbbfae963faf4a7277ac481c to your computer and use it in GitHub Desktop.
TextView extension : break string by letter
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment