TextView с 3 строками имеет разную высоту в зависимости от количества заполненных строк - PullRequest
1 голос
/ 08 ноября 2019

У меня есть следующее TextView:

<com.mycompany.CustomTextView
    android:id="@+id/productName"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:ellipsize="end"
    android:lines="3"
    android:maxLines="3" />

Это приводит к ожидаемому виду TextView с различным количеством текста: TextView with different amounts of text

Однако,когда я использую корпоративный шрифт, созданный нашей компанией, TextView становится больше с каждой строкой без текста: enter image description here

Я не знаю, как это может зависеть отиспользуемый шрифтЕсть ли какой-либо атрибут в файле .ttf, который приводит к этому странному поведению?

Моей первой мыслью было, что Android добавляет новые абзацы в TextView, если не все строки заполнены. Но для меня было бы новостью, что файл шрифта может определять интервал абзаца по умолчанию.

Ответы [ 2 ]

0 голосов
/ 08 ноября 2019

Поскольку у вас есть пользовательский Textview.Calculate и динамически обновляйте LayoutParams в зависимости от совокупной высоты каждой строки. Да Размер текста зависит от типа шрифта. Проверьте это для подробного объяснения.

Проголосуйте, если это поможет.

Спасибо. Удачного кодирования.

0 голосов
/ 08 ноября 2019

Поскольку ваш вид имеет высоту и ширину в виде "wrap_content" с max_lines = 3. Теперь совершенно очевидно, что размеры представления будут меняться в зависимости от того, как он выяснит, сколько высоты ему потребуется для размещения трех линий определенного типа (шрифт) введенного текста

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...