He añadido un EditText
a mi diseño, agregué una pista y la hice centrada horizontalmente.
Al ejecutar la aplicación, la sugerencia era invisible. Descubrí que debería hacer el ellipsize
valor de TextView
ser start
:
<EditText
android:id="@+id/number1EditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ellipsize="start"
android:ems="10"
android:gravity="center_horizontal"
android:hint="@string/hint1" />
En la documentación de Android, leo:
Si se establece, hace que las palabras que son más largas que la vista sean anchas se
elipsen en lugar de dividirse en el medio.
El problema es que ellipsize
no se encuentra en el diccionario. ¿Alguien puede explicarme qué beneficios podemos obtener por ellipsize
atributo? ¿Y cuál es la diferencia entre start
, end
, middle
?
android
android-layout
textview
Hamzeh Soboh
fuente
fuente
Respuestas:
Puede encontrar documentación aquí .
Según sus requisitos, puede probar según la opción.
a ellipsize , un neologismo, medios para texto acortar utilizando una elipsis , es decir, tres puntos
...
o más comúnmente ligadura…
, para estar en para los bits omitidos.Digamos que el valor original de la vista de texto pf es aaabbbccc y se ajusta dentro de la vista
start
La salida será: ... bcccend
La salida será: aaab ...middle
La salida será: aa ... ccmarquee
La salida será: aaabbbccc auto deslizamiento de derecha a izquierdafuente
para mi experiencia, Elipsis funciona solo si se establecen dos atributos a continuación.
para el ancho de textview, wrap_content o match_parent deberían ser buenos.
fuente
android:singleLine
quedó en desuso desde el nivel 3 de API, por lo tanto, úseloandroid:maxLines
. Tenga en cuenta:> si se proporcionan singleLine y inputType, los indicadores inputType anularán el valor de singleLine. Echa un vistazo a los documentos en R.attr.html # singleLineHow to Add an ellipsis in a TextView
android: ellipsize agregado en el nivel 1 de API. Una elipsis es tres períodos seguidos. (...)
En tu Xml
En este punto, los puntos suspensivos no se mostrarán aún ya que TextView está configurado para expandirse automáticamente por defecto cuando se ingresa texto nuevo. Tendrá que limitar TextView de alguna manera. Haga esto, puede usar agregar a su
TextView a scrollHorizontally, minLines, or maxLines
para que se muestren los puntos suspensivos.Para hacer la elipse:
Y
Y
Y
Nota por favor:
Para más detalles puedes visitar aquí
fuente
Una elipsis es tres períodos seguidos ...
TextView usará puntos suspensivos cuando no pueda expandirse para mostrar todo su texto. El atributo
ellipsized
establece la posición de los tres puntos si es necesario.fuente
Texto:
Suponga que arriba está su texto y si está usando
ellipsize
elstart
atributo se verá asícon
end
atributofuente
Aquí hay un ejemplo de cómo funciona el elipsis sin usar obsoleto
android:singleLine="true"
en un diseño de restricción:recuerde que si tiene un texto que se supone que está en una sola línea, cambie maxLines a 1.
fuente
android:layout_width="0dp"
lugar deandroid:layout_width="wrap_content"
. Tenga en cuenta que esto es aplicable porque estoy usando aConstraintLayout
. También discutido aquí stackoverflow.com/a/48149405/2848676Nota: su texto debe ser más grande que la caja del contenedor para que se marque lo siguiente:
fuente
Establezca esta propiedad para editar texto. Elipsize funciona con deshabilitar editar texto
o setKeyListener (nulo);
fuente
Use elipsis cuando tenga un ancho fijo, luego truncará automáticamente el texto y mostrará los puntos suspensivos al final,
no funcionará si configura layout_width como wrap_content & match_parent.
fuente