Ich habe eine TextView mit viel Text. Diese TextView hat maxLines
set, so dass nur die ersten 8 Zeilen angezeigt werden. Ich habe auch eine Schaltfläche "Mehr lesen", so dass ich die Textansicht selbst erweitern kann.
Mein Problem ist, dass die TextView manchmal ein wenig scrollt (nur eine halbe Zeile), obwohl ich nie Scrollbalken angegeben habe. Dieses Problem wird verschlimmert, da sich die TextView in einer ListView befindet. Wenn der Benutzer die ListView-Hauptansicht scrollt, scrollt die TextView daher manchmal ein wenig:
Wie verhindere ich das Scrollen der TextView?
Ich habe das gleiche Problem, meine Lösung ist ein NoScrollTextView erstellen erweitert TextView wie folgt
%Vor%set scrollTo nichts tun
In Kotlin:
%Vor%Also habe ich ein wenig recherchiert und ich glaube nicht, dass es so einfach ist, nur Scrollen zu deaktivieren, aber es gibt ein paar Dinge, die Sie tun können / versuchen.
Der erste ist setEnabled (false), aber das wird Links deaktivieren und die Textfarbe ändern.
Die zweite Methode, die ich vorschlagen möchte, ist die Methode scrollTo (int x, int y). ScrollTo (0,0) nachdem ich den Text von TextView gesetzt habe, ist mein Vermutung, dass der große Text das einzige ist, was das Scrollen verursacht, also sollte es in der Lage sein, sich darum zu kümmern.
Die dritte Antwort, die ich gefunden habe, dass Sie versuchen können, ist ein bisschen komplizierter und nicht genau Ihre Frage, aber es kann für Sie arbeiten kann gefunden werden hier .
%Vor%"Danach wird es auf die Zieltextansicht als Touch-Listener angewendet: -
textview.setOnTouchListener (neues LinkMovementMethodOverride ()); "
Ich brauchte Funktion wie mehr in meinem Projekt sehen und ich verwendet Ellipsen Textansicht von dieser SO Post. Es funktioniert wie ein Charme und bietet auch eine Schnittstelle für die Überprüfung, ob der Text ellipsenförmig war. Dies sollte den Trick tun.
Verwenden Sie einfach setMinLines () , um immer ganzen Text anzuzeigen
Tags und Links android android-layout android-scroll android-textview