Android TextView SingleLine campo oculta texto largo

Tengo un TextView que se encuentra en el lado izquierdo de la pantalla y se establece con gravedad = "derecho" y se establece con SingleLine = "true".

Si por alguna casualidad el texto de esta vista es demasiado largo, quiero que simplemente desaparezca del lado izquierdo de la vista. Pensé que la configuración a continuación haría eso, pero lo que realmente sucede es que la cadena larga desaparece por completo, presumiblemente hacia abajo y fuera de la vista en alguna parte.

¿Cómo puedo crear una vista de texto simple que contiene una sola línea de texto y mantiene su diseño incluso cuando sucede algo inesperado? … o incluso algo predecible.

<TextView android:id="@+id/tempF" android:text="@string/tempF" android:layout_width="146dp" android:layout_height="wrap_content" android:textColor="#cccccc" android:textStyle="bold" android:textSize="92dp" android:fontFamily="serif" android:gravity="right" android:layout_marginTop="60dp" android:layout_gravity="top|left" android:singleLine="true" /> 

Éste es el propósito de "ellipsizar": truncar una parte del texto para indicar texto adicional.

En su caso, puede simplemente tiene que agregar algo como:

 android:ellipsize="end" 

O puede ser necesario profundizar más:

Elipse automáticamente una cadena en Java

O mire esto:

Androide, elipse, multilínea, texto, vista

La idea detrás de extender la clase es que se puede personalizar el comportamiento de TextView cuando el contenido de texto excede el espacio proporcionado. Por ejemplo, puedes darle la apariencia de que "sangra" eliminando relleno, etc. Una elipsis es un indicador que se usa comúnmente para explicar "hay más texto que no puedes ver" – así es como se vería :

Esto es realmente muy largo …

(Los 3 períodos son las elipsis – su texto va en la dirección opuesta, pero todavía debe funcionar)

Con un TextView personalizado, puede cambiar el "…" a nada o cualquier otra cosa que desee (incluso una imagen, que he hecho).

También puede marcar el texto:

La marquesina de TextView no funciona

Usted debe jugar con el atributo ellipsize de la TextView.Check a continuación:

 <TextView android:id="@+id/tempF" android:text="@string/tempF" android:layout_width="146dp" android:layout_height="wrap_content" android:textColor="#cccccc" android:textStyle="bold" android:textSize="92dp" android:fontFamily="serif" android:gravity="right" android:layout_marginTop="60dp" android:layout_gravity="top|left" android:singleLine="true" android:ellipsize="end" /> 

Añadir 2 propiedades en xml

 android:singleLine="true" android:ellipsize="end" 
  <TextView android:id="@+id/tv_desc" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="@color/colorGray" android:textSize="@dimen/_18dp" android:padding="@dimen/_2dp" android:singleLine="true" android:ellipsize="end" android:text="@string/desc"/> 
  • XML para la programación de Android
  • Cómo configurar OnClickListener (Android)
  • No se encontró ningún identificador de recurso para el atributo 'layout_behavior' en el paquete
  • Android - Creación de una imagen animada de tipo analógico para el movimiento
  • Simple Xml - orden de elementos no conservados?
  • ¿Puede un ToggleButton cambiar la funcionalidad de otros botones en la misma Actividad?
  • org.w3c.dom.Node con la versión de Android menos de 2.2
  • Tamaño máximo al analizar XML con DOM
  • El método más simple para convertir Json a Xml
  • Cómo conservar los nodos XML que no están enlazados a un objeto cuando se utiliza SAX para analizar
  • Mostrar contenido en la barra de herramientas
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.