Подтвердить что ты не робот

Как показать 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. но никакого положительного результата. Я также не хочу обращаться с этой штукой программно, добавив три точки логически.

Пожалуйста, помогите

4b9b3361

Ответ 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" />