vitals udacity optimize nanodegree improve fundamentals developing developer advanced android performance

udacity - ¿Por qué android: singleLine="true" hace que ListView se desplace muy lento?



optimize android (1)

Parece que estas 2 funciones en realidad no están dando exactamente los mismos resultados.

De acuerdo con un tema interesante creado en este blog por Radley Marx, singleLine ahora está en desuso en su mayor parte, pero aún puede ser útil en algunos casos porque no considerará los retornos de carro y recopilará el máximo de texto en una sola línea:

La mayor ventaja es que singleLine ignoraría los retornos de carro (/ n) y colocaría todo el texto en una sola línea, a veces incluso apretando el texto. MaxLines no se molesta.

Finalmente concluye:

A pesar de que singleLine está en desuso, aún se usa mucho en aplicaciones antiguas de Android en teléfonos con Android antiguos, por lo que realmente no desaparece. Pero ha sido abandonado durante mucho tiempo y tiende a romperse en formas inesperadas. Use maxLines siempre que pueda y singleLine solo cuando deba hacerlo.

Luego, si revisa la documentación de Android sobre ambos métodos: singleLine y maxLines , puede ver que el primero se maneja con un método de TransformationMethod texto que explicaría por qué es mucho más lento que el segundo.

He notado que android:singleLine="true" , si se usa en TextView of Listitem en ListView, hace que el desplazamiento sea muy lento. Aunque he encontrado un android:maxLines="1" alternativo android:maxLines="1" , tengo mucha curiosidad por saber por qué android:singleLine="true" hace que el desplazamiento sea muy lento e incluso si está rezagado, ¿por qué aún anda usando eso?