Установите фактическое заполнение текста в TextView с составными чертежами

У меня есть ListView, заполненный с помощью ArrayAdapter. Для элементов я использую только один макет TextView. Я хочу, чтобы некоторые из строк имели составные чертежи.

Вопрос: есть ли способ установить дополнение для фактического текста, содержащегося в TextView, чтобы составные чертежи не получили дополнение? Другим решением будет блокировка ширины текста. Нужно ли добавить ImageViews в мой макет?

Спасибо заранее.

Ответы

Ответ 1

Я отправляю это как ответ, чтобы кто-то, кто встретил это сообщение, нашел ответ.

Нет прямого способа установить дополнение только к тексту, но вы можете установить возможное заполнение для всего TextView и установить отрицательное дополнение для drawable.

Ответ 2

Довольно простой

Android: drawablePadding = "5 диоптрий"

Он будет автоматически использовать отступы в соответствии с направлением

Ответ 3

Улучшение на Gio sugestion, которое, вероятно, относится к датированному API/SDK...

TL: DR - просто примените android:drawablePadding, чтобы увеличить расстояние между изображением и текстом.

Объяснение: android:drawablePadding теперь применяется отступы между CompoundDrawable и оригиналом View, в этом случае TextView, содержащий текст;

android:padding и теперь применяются модификаторы для всей группы, включая все соединения.

Выполнение негативно-позитивного взлома больше не работает.

Таким образом, в зависимости от доступного положения (drawableTop/Left/...), прокладка будет применяться в противоположном направлении от нее, прямо рядом с возможностью вытягивания, другими словами между двумя элементами. Например, применение drawablePadding="10dp" к выведенному слева элементу будет иметь такой же эффект, как установка индивидуального ImageView слева от TextView с помощью paddingRight="10dp" (по крайней мере, по умолчанию).