Android: TextView automáticamente truncar y reemplazar los últimos 3 caracteres de String

Si una String es más larga que la anchura de TextView , ésta se enrolla automáticamente en la línea siguiente. Puedo evitar esto usando android:singleLine (obsoleta) o estableciendo android:inputType="text" . Lo que necesito ahora es algo que reemplaza los últimos 3 caracteres de mi String con " ". Puesto que no estoy usando una fuente monospace esto será siempre diferente dependiendo de las letras usadas en mi String . Así que me pregunto cuál es la mejor manera de obtener los últimos 3 caracteres de una cadena en un TextView y reemplazarlos. Tal vez ya hay algo implementado en el marco de Android, ya que este debe ser un problema común.

Debe ser capaz de utilizar la propiedad "ellipsize" de una vista de texto:

 <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/text_mytext" android:ellipsize="end" android:singleLine="true" /> 

También puede ser necesario aplicar valores de gravedad a la disposición también; A veces he visto "auto-stretching" vistas sin ellos.

Encontramos un trabajo interesante para este problema.

 maxLines=1 ellipsize=end scrollHorizontally=true 

El truco es que la última declaración sobre el desplazamiento horizontal …. echa un vistazo. Por lo menos, funciona en v2.2.

Con programaticamente

Puedes usar

 TextView tx = new TextView(this); tx.setTextSize(13); tx.setGravity(Gravity.CENTER); tx.setTop(90); tx.setText("Long text here"); tx.setTextColor(Color.BLACK); tx.setSingleLine(true); tx.setEllipsize(TruncateAt.END); 
  • Custom TextView en android con diferentes palabras de color
  • ¿Cómo puedo mostrar caracteres especiales (como & ndash;) en TextView?
  • Enfocar el siguiente texto automáticamente
  • El identificador de recursos no puede ser una cadena vacía (en 'texto' con valor '?') En el atributo textAppearance
  • Última palabra mostrada en una vista de texto
  • Grados (como en Grados Celsius / Fahrenheit) en un TextView
  • Android TextView no actualiza su texto cuando textIsSelectable está establecido en true
  • Utilizar programaticamente setTextSize en? Attr / textAppearanceLarge
  • Tamaño de texto de Android por programa demasiado grande
  • Campo o etiqueta oculto en TextView?
  • Single TextView con texto coloreado múltiple
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.