2010-12-03 14 views
13

Gibt es ein funktionierendes Beispiel für Marquee in Android? Ich habe einige Websites durchsucht, aber diese Beispiele funktionieren nicht.Android Marquee

Vielen Dank für die Antworten .. Aber der folgende Code funktioniert sowieso nicht. Ich benutze Android 2.2.

 <TextView  
      android:singleLine="true" 
      android:ellipsize="marquee" 
      android:marqueeRepeatLimit ="marquee_forever" 
      android:text="Marquee.."/> 

Antwort

0

Verwendung android: ellipsize = "Marquee"

<TextView 
    android:id="@+id/secondLine" 
    android:singleLine="true" 
    android:ellipsize="marquee" 
    android:text="Simple application marquee sample..."/> 

Keeo Text zu groß genug, um es Marquee Effekt ausführen zu lassen ..

0

Sie ellipsize=marquee und marqueeRepeatLimit Attribut festlegen :

Zum Beispiel: Ich habe für die TextView gesetzt:

android:ellipsize="marquee" 
android:marqueeRepeatLimit ="marquee_forever" 

können Sie beziehen sich diese Frage SO für die besten Informationen: Is there a way to make ellipsize="marquee" always scroll?

32

es ist einfach über XML zu tun. Verwenden Sie die folgenden Einstellungen:

android:singleLine="true" 
android:ellipsize="marquee" 
android:marqueeRepeatLimit="marquee_forever" 
android:focusable="false" 
android:scrollHorizontally="true" 

Wenn Ihr Textview innerhalb eines RelativeLayout ist, die Breite oder Höhe müssen statisch sein (das heißt 32DP). Wenn Sie dynamic benötigen, platzieren Sie das TextView in einer anderen Ansicht innerhalb des RelativeLayout.

In onCreate(), müssen Sie die Textview ausgewählt machen:

myTextView.setSelected(true); 
+2

myTextView sein .setSelected (wahr); ist MUSS! .. sonst funktioniert es einfach nicht ... – Ewoks

2

Die Codezeilen Sie fehlten, sind:

android:focusable="true" 
    android:focusableInTouchMode="true" 
    android:singleLine="true" 

Im Textfeld diesen Text versuchen, als es sich um eine langer Text.

android:text="This is a very long text which is not fitting in the screen so it needs to be marqueed." 

Überprüfen Sie meinen kompletten Code und Schritt für Schritt Prozess here

1

Sie vergessen haben, dies in Java zu tun ..

tv.setSelected(true); 

und die xml wird

android:scrollHorizontally="true" 
android:singleLine="true" 
android:ellipsize="marquee" 
android:focusable="false" 
android:marqueeRepeatLimit="marquee_forever" 
Verwandte Themen