Как показать 3 точки в конце текста в текстовом виде
Я знаю, что этот вопрос задают много раз, я прошел все решения, но проблема одна и та же.
Я хочу, чтобы длина моего текста составляла 50 символов. теперь он идет в 2 строках.
Ниже приведено то, что я сделал:
<TextView
android:id="@+id/notification_Message"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/notification_head"
android:layout_centerHorizontal="true"
android:layout_margin="10dp"
android:gravity="center"
android:ellipsize="end"
android:maxLength="50"
android:text=" Hello developer. please check this message for long length. max length to 50 characters. "
android:textSize="20sp" />
Текст здесь - только образец текста, который я добавил. он не показывает 3 точки в конце, а показывает сообщение до 50 символов. Я также пробовал max lines, одиночная строка false. но никакого положительного результата.
Я также не хочу обращаться с этой штукой программно, добавив три точки логически.
Пожалуйста, помогите
Ответы
Ответ 1
Сделайте предустановленную ширину для вашего TextView и добавьте эти атрибуты (Shout-out to @T-D)
android:ellipsize="end"
android:maxLines="1"
MaxLines будет следить за тем, чтобы ваш текст не отображался в двух строках, а эллипсис добавит три точки в конце.
Старый ответ
android:ellipsize="end"
android:singleLine="true"
Ответ 2
Для текста одной строки с точкой, но теперь ее Износ, поэтому больше не используйте singleLine
Благодаря этому сообщению я обнаружил, что как показать точку после конца текста, если у нас есть более одна строка, она работает для меня:)
android:ellipsize="end"
android:maxLines="2"
Отправьте сюда этот ответ, потому что все ответы здесь для одной строки не для многострочных
Ответ 3
android:ellipsize
будет работать только с:
android:singleLine="true"
или
android:maxLines="#any number#"
android:scrollHorizontally="true"
Поскольку maxLength усекает текст.
Итак, вам нужно управлять меткой с кодом, если вы хотите отображать только 50 char + точек, или пусть две строки для текстового поля.
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="end"
android:maxLines="2"
android:scrollHorizontally="true"
android:text="Hello developer. please check this message for long length. max length to 50 characters."
android:textSize="20sp" />
Ответ 4
android:singleLine="true"
устарел
лучше использовать
android:maxLines="1"
и android:ellipsize="end"
, чтобы добавить "..." в конец текста
Ответ 5
Используйте singleLine = "true"
для предельного текста с помощью singleLine
Ответ 6
Создайте свою настройку TextView:
<com.xyz.CustomizedTextViewName
android:id="@+id/app_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:ellipsize="end"
android:singleLine="true"
android:maxEms="10"
app:typeface="roboto_bold"/>
Ответ 7
Я тоже боролся с этим. android:maxLength
не имел никакого эффекта, поэтому я играл с android:maxWidth
, и он работал.
Ознакомьтесь с моим фрагментом ниже.
<TextView
android:id="@+id/tv_comment_author"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxWidth="120dp"
android:singleLine="true"
android:ellipsize="end"
android:text="@string/dummy_text"/>
Ответ 8
Подход @Lokesh отлично работает.
android:ellipsize="end"
android:maxLines="2"
Но я понимаю, что TextView будет усечен словом (по умолчанию). Покажите, есть ли у нас текст:
test long_line_without_any_space_abcdefgh
TextView отобразит:
тест...
И я нашел решение для решения этой проблемы, заменив пробелы символом пробела unicode без прерывания, он превращает TextView в символы вместо слов:
yourString.replace(" ", "\u00A0");
Результат:
test long_line_without_any_space_abc...
Ответ 9
Это ответ, который вы хотите:
<TextView
android:id="@+id/tv_title"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="wrap_content"
android:text="Title"
android:maxLines="1"
android:ellipsize="end"
android:maxWidth="195dp"
android:textColor="@color/white"
android:textSize="14dp"
android:gravity="center"
/>
Ответ 10
<TextView
android:id="@+id/txt__customizer_item"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:gravity="center"
android:paddingRight="20dp"
android:singleLine="true"
android:text=" Hello developer. please check this message for long length. max length to 50 characters. "
android:textAppearance="@android:style/TextAppearance.Medium"
android:textColor="@color/light_blue"
android:textSize="20sp" />
Это работает для ввода me.give с правой стороны. Это автоматически отображает...
Ответ 11
вы можете сделать это с помощью xml
:
<TextView
android:id="@+id/textview"
android:maxLines="1" // or any number of lines you want
android:ellipsize="end" />