У меня есть ListView, который я хочу заполнить элементами, каждый из которых содержит только один TextView
.Особенность этих TextView
-s заключается в том, что им нужно использовать собственный шрифт (а не один из трех встроенных шрифтов).Я не могу установить пользовательский шрифт (гарнитуру) через XML, поэтому единственный способ сделать это - вызвать tv.setTypeface()
для всех TextView-ов в методе getView()
моего адаптера.
Теперь проблема в том, чтошрифт, который я хочу использовать, имеет довольно разный межстрочный интервал (по умолчанию), поэтому результирующий текст кажется больше, чем тот же текст, отрисованный с использованием шрифта по умолчанию (при условии, что мы используем один и тот же textSize
для двух шрифтов).Это особенно влияет на то, как ListView
измеряет общий размер (высоту) моего текста (и, следовательно, размер полосы прокрутки), думая, что текст отображается с использованием шрифта по умолчанию (хотя в действительности это не так).
КогдаЯ прокручиваю ListView
вверх или вниз, и общий размер текста постоянно пересчитывается, что приводит к изменению длины полосы прокрутки (что выглядит странно).Интересно, есть ли способ сказать ListView
использовать мой собственный шрифт до вызова метода getView()
(т.е. во время измерения текста)?