I've created a series of tabs that have a fixed width of 100px. A tab contains an image with some text below it. If the text is too long to fit, I want it to automatically scroll. I only want one line. I tried the following but it did not work. I am using Android 2.3:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginRight="3dp"
android:layout_marginTop="3dp"
android:background="#ff737373"
android:gravity="center"
android:minWidth="64dp"
android:orientation="vertical"
android:padding="3dp" >
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:tag="tabImage" >
</ImageView>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
android:focusable="true"
android:focusableInTouchMode="true"
android:scrollHorizontally="true"
android:singleLine="true"
android:maxWidth="100px"
android:tag="tabCaption"
android:textColor="#ffd9d9d9"
android:textSize="16sp" />
</LinearLayout>
Any idea why this does not work? I came across the solution from another posting and there the user indicated that it works.
You might want to try this:
https://github.com/kaeppler/ignition/blob/master/ignition-core/ignition-core-lib/src/com/github/ignition/core/widgets/ScrollingTextView.java
Be aware that if the text is smaller in length than the width of the bounds defined for it it WILL NOT scroll. In this case you may want to extend the text with itself something like:
-. . . . .
And if you want your text to marquee forever:
In your activity you have to add if you want to marquee on text