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:
- Try to change
android:ellipsize="end"
attribute toandroid:ellipsize="marquee"
. - Try to remove
android:maxLines="1" android:ellipsize="end"
attributes and addandroid: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"