Autore Topic: Autoscroll testo in una TextView  (Letto 397 volte)

Offline felasandroid

  • Utente normale
  • ***
  • Post: 345
  • Respect: +10
    • Github
    • balduzziantonio
    • balduzziantonio.unifi
    • Mostra profilo
  • Dispositivo Android:
    Huawei P8 Lite
  • Play Store ID:
    FelasTech
  • Sistema operativo:
    Windows 10
Autoscroll testo in una TextView
« il: 29 Aprile 2015, 10:23:58 CEST »
0
Salve

stavo provando a implementare del testo che scrorre orizzontalmente in maniera automatica.

Ho messo in un LinearLayout:

Codice (XML): [Seleziona]
<TextView android:id="@+id/chat_text_chat"
               android:text="center chat"
               android:layout_width="fill_parent"
               android:layout_height="wrap_content"
               android:maxLines = "250"
               android:scrollbars = "horizontal"
                />

e poi da codice in onCreate:

Codice (Java): [Seleziona]
 this.chat_text_chat = (TextView) this.findViewById(R.id.chat_text_chat);
 chat_text_chat.setMovementMethod(new ScrollingMovementMethod());
 String strTemp = "TestlineOne gogfdsgmfdsngf dsgfè dsègpf dèsg fds pgofdpèso gfdèposgèpfdspèogfo dsg fdsogfpdsgè fTestlineTwo";
 chat_text_chat.setText(strTemp);

ma non si muove nulla..in teoria dovrebbe bastare quello che ho messo (dalle varie guide che ho visto) ma evidentemente no..

Offline Nicola_D

  • Moderatore
  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:Autoscroll testo in una TextView
« Risposta #1 il: 29 Aprile 2015, 12:33:09 CEST »
+1
se metti max lines 250 non credo possa scrollare orizzontalmente, andrà a riempire fino a 250 righe e poi fa ellipsize (credo di default sia i ... alla fine).

Se vuoi il testo che scorre in automatico in orizzontale devi dargli ellipsize=marquee ma credo funzioni solo in caso di single line (o se il testo è piu largo della view).

ci sono altri parametri da provare:
android:marqueeRepeatLimit ="marquee_forever"
android:scrollHorizontally="true"

qui una discussione interessante:
android - Is there a way to make ellipsize=&quot;marquee&quot; always scroll? - Stack Overflow

in cui una risposta, molto mirata è:
Citazione
To make marquee work TextView should be selected, not focused. Focus gives selection but not the reverse.

io avevo fatto qualcosa del genere anni fa (era appena uscito Jelly bean forse) e quindi non ricordo, ma non è semplicissmo...
vedi se ci sono librerie su github
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline felasandroid

  • Utente normale
  • ***
  • Post: 345
  • Respect: +10
    • Github
    • balduzziantonio
    • balduzziantonio.unifi
    • Mostra profilo
  • Dispositivo Android:
    Huawei P8 Lite
  • Play Store ID:
    FelasTech
  • Sistema operativo:
    Windows 10
Re:Autoscroll testo in una TextView
« Risposta #2 il: 29 Aprile 2015, 15:37:55 CEST »
0
se metti max lines 250 non credo possa scrollare orizzontalmente, andrà a riempire fino a 250 righe e poi fa ellipsize (credo di default sia i ... alla fine).

Se vuoi il testo che scorre in automatico in orizzontale devi dargli ellipsize=marquee ma credo funzioni solo in caso di single line (o se il testo è piu largo della view).

ci sono altri parametri da provare:
android:marqueeRepeatLimit ="marquee_forever"
android:scrollHorizontally="true"

qui una discussione interessante:
android - Is there a way to make ellipsize=&quot;marquee&quot; always scroll? - Stack Overflow

in cui una risposta, molto mirata è:
io avevo fatto qualcosa del genere anni fa (era appena uscito Jelly bean forse) e quindi non ricordo, ma non è semplicissmo...
vedi se ci sono librerie su github

Intanto grazie...si ora cerco qualcosa su github.. Ho provato e diciamo mi funziona  alle volte si e alle volte no..