2012-08-07 19 views
7

he generado una programación ScrollView con un TextView dentro de ella. Deseo actualizar el texto en el TextView de vez en cuando y algunos han puesto en práctica una función de controlador para actualizar el elemento TextView interfaz gráfica de usuario. Esto parece llamar/trabajar correctamente.contenidos ScrollView actualizar

Sin embargo, actualmente la única forma que he encontrado para realidad obtener el TextView para mostrar la información añadida es llamar:

consoleText.append("New text to add to TextView"); 
// then: 
myScrollView.removeView(myTextView); 
myScrollView.addView(myTextView); 

Ésta no es la particularidad óptima y se preguntaba cómo puedo actualizar la contenido de la ScrollView para mostrar la información de mi recién agregado ...

también:

invalidate(); 
postvalidate(); 

no parecen hacer nada - el objeto TextView tiene el nuevo texto en ella (en busca de depuración) es simplemente no dibujo a la pantalla a menos que llamo el complemento función/eliminar.

Gracias por cualquier información/ayuda que puede dar

FR

+0

es la función de agregación llamando setText() en la Vista de Texto bajo el capó? – Samuel

Respuesta

8

Debe llamar invalidate() y requestLayout() en la Vista de Texto, y tal vez el ScrollView.

+0

consoleText.invalidate(); consoleText.requestLayout(); que lo hizo gracias :) – FiniteRed

+1

Llamada 'invalidate()' y '' requestLayout' en ScrollView' resuelven mi problema de vista de recorte también. ¡Gracias! – camelCaseCoder