Просмотр текста в Android - добавьте некоторый постоянный (не обрезанный) текст в конец текста

1

Я пытаюсь сделать андроид textview для отображения названия и расстояния. Мой код выглядит следующим образом

<TextView android:id="@+id/name" android:textSize="15dip"
android:ellipsize="end" android:maxLines="2"
android:layout_width="fill_parent" android:layout_height="wrap_content" />

Текст в текстовом представлении автоматически обрезается после заполнения 2 строк. Если я добавлю расстояние с текстом. расстояние также обрезано. Мне нужно сохранить заголовок, но не расстояние.

Например

"This is title line 1 
and this is title lin... (2 Mi)"
  • 0
    Я сделал это, измерив размер символа (используя avg), вручную обрезал свой основной текст и добавил к нему текст расстояния. avgCharSize = txtName.getPaint (). measureText ("iw.H012 () R") / 10.0f; // Поскольку мой текст содержит символы, символы и цифры
Теги:
android-layout

2 ответа

0

Держите два TextViews рядом друг с другом. Первый TextView должен быть динамическим, второй должен быть постоянным "(2 Mi)" Таким образом, вы можете легко его поддерживать. Для этого потребуется кодирование

  1. Рассчитать доступную ширину
  2. Вычислить ширину текста, охватываемую всей строкой
  3. Если значение шага 2> значения шага 1, вычесть подстроку

это звучит как неэффективный способ сделать это

0

Вы можете указать длину фиксированного текста, отображаемую установкой в xml

android:maxLength="50"

Затем кодирующая сторона,

String str = "Your String";
String constantStr = "2 Mi";
if(str.length()>43)
{
    str = str.subString(0,42)+"..."+constantStr;
}
else
{
    str = str + " " + constantStr; 
}
tv.setText(str);
  • 0
    Это звучит хорошо, но будет ли это иметь значение в разных устройствах с разными размерами экрана? Я пытаюсь найти количество символов, которое мое текстовое представление может отображать в каждой строке (может отличаться на разных устройствах).
  • 0
    Я думаю, что количество символов будет работать на любом размере экрана, хотя я никогда не проверял

Ещё вопросы

Сообщество Overcoder
Наверх
Меню