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); 
  • Cómo aumentar el espacio entre párrafos en una vista de texto
  • Campo o etiqueta oculto en TextView?
  • Prevenir salto de línea en TextView
  • Android cómo hacer TextView texto en negrita cuando se presiona o centrado
  • ¿Cómo mover una Textview dinámicamente en la pantalla? (Framelayout)
  • Ocultar TextView después de algún tiempo en Android
  • Multilínea TextView
  • ¿Cómo hago el centro vertical de dos puntos en TextView
  • Tamaño de texto de escala automática
  • InputType = PersonName?
  • Cómo cambiar el estilo de un TextView en tiempo de ejecución
  • Interesting Posts
    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.