Skip to content Skip to sidebar Skip to footer

Textview's Ellipsize Not Working On Maxlines = 1

I really cannot figure out why, but I am only able to get ellipsize working on maxLines=2 and more. I am displaying a few words of description and then a long string with no spaces

Solution 1:

There are two ways to fix it:

  1. Try to change android:ellipsize="end" attribute to android:ellipsize="marquee".
  2. Try to remove android:maxLines="1" android:ellipsize="end" attributes and add android:singleLine="true" attribute.

Solution 2:

This code works for me:

In the xml add:

  • Attribute ellipsize: marquee
  • Attribute lines: 1

In java:

<yourTextView>.setHorizontallyScrolling(true);
<yourTextView>.setSelected(true);

If there is another item that request the "focus" you lose the marquee effect. The textView need the state selected to prevent this.

Solution 3:

Actually the problem is with the spannable text, if you set spannable text this wouldn't work. Other than this below code works for me

<TextView
    android:id="@+id/tv_second"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textSize="40dp"
    android:layout_margin="5dp"
    android:padding="5dp"
    android:fontFamily="sans-serif-condensed"
    android:textColor="#b3277b"
    android:background="#f7ecff"
    android:layout_below="@id/tv"
    android:text="This is first line\nThis is second line\nThis is third line"
    android:ellipsize="end"
    android:maxLines="2"/>

Post a Comment for "Textview's Ellipsize Not Working On Maxlines = 1"