Android: текстовое представление с ограничением строки с "...", чтобы показать, что есть больше контента

Я отображаю длинный (случайный) текст в TextView. Я хочу показать 3 строки в этом TextView и показать точки (...), если есть больше контента. Я знаю, что могу ограничить строки TextView с помощью minLines и maxLines, но я не знаю, где добавить точки в строке.

Например, TextView может / должен выглядеть

"This i random text
 this is a short one
 and more is here..."

"This one has a very
 loooooooooooooooong
 string so where ..."

2 ответа

Решение

Вам не нужно знать, где добавить точки, TextView может сделать это за вас. Проверять, выписываться android:ellipsize=end, Обратите внимание, что алгоритм многоточия не работает надежно в старых версиях Android. Там могут быть расхождения между точным поведением между 2,3, 3 и 4+. Например, я знаю, что он не будет отображать более двух строк в 2.3

Вы можете создать простой алгоритм, который проверяет, какое слово отображается в символах X, а после или перед этим словом вы можете добавить точки.

Другие вопросы по тегам