texto studio plain mostrar example espaƱol edittext android textview

android - studio - textview html



Termine TextView con 3 puntos con el uso de maxLength (10)

Tengo un TextView en mi diseño que está wrap_content en layout_width. Se limita a un máximo de 15 caracteres, así que estoy usando maxLength.

Necesito terminar este TextView con 3 puntos (...) y sucede solo cuando le doy a layout_width un tamaño fijo con dp, algo que no quiero hacer.

Sé que es posible hacer esto por código y cortar la cadena después del carácter 15 y luego agregar los 3 puntos, pero prefiero hacerlo por XML.

¿Alguna idea de cómo terminar el texto con 3 puntos y dejarlo wrap_content?

<TextView android:id="@+id/inbox_contactName" android:layout_width="wrap_content" android:layout_height="wrap_content" android:lines="1" android:maxLines="1" android:ellipsize="end" android:singleLine="true" android:maxLength="15" android:textColor="#0670b4" android:textSize="16sp" />


MUY IMPORTANTE: ellipsize = "end" solo funciona cuando maxLength se establece en un valor que es MÁS QUE el número de caracteres en una línea. Puede usar ''wrap_content'' si alinea el extremo de TextView y comienza con cualquier otra vista.


Necesitaba hacer esto con el botón de radio y quería limitar el tamaño a una línea. Cuando usé Android:singleline="true" , el círculo de verificación del botón de radio desapareció. Aquí está el código que finalmente funcionó:

android:ellipsize="end" android:maxLines="1"

No hay necesidad de configurar ems. Esto probablemente también funcionará en TextView y otros componentes de la interfaz de usuario. Espero que esto ayude a alguien.


No puede usar maxLength y Ellipsize aunque puede definir Maximum EMS vea el ejemplo a continuación

<TextView android:id="@+id/tv_hist_source_lang" android:layout_width="wrap_content" android:layout_height="wrap_content" android:ellipsize="end" android:maxEms="8" android:maxLines="1" android:text="TextView" android:textAppearance="?android:attr/textAppearanceMedium" />


Puedes usar

android:maxWidth="100dp" android:maxLines="1" android:ellipsize="end"

Sólo esto funciona para mí.


Solo puede modificar la String cuando su longitud sea superior a 20 para agregar el tamaño de elipsis.


Supongo (a partir del comentario) que @Yaniv ya lo resolvió con un código, pero esta es la forma correcta de hacerlo (con xml). Puede ayudar a otros usuarios que aterrizan aquí. El truco es usar tanto toleftof como torightof.

<RelativeLayout> ... <TextView android:layout_width="fill_parent" android:layout_height="fill_parent" android:singleLine="true" android:layout_toRightOf="@id/some_element1" android:layout_toLeftOf="@id/some_element2"/> ... <RelativeLayout>


Una de las formas más fáciles es agregar el relleno derecho y elipsis

<TextView android:id="@+id/txtvw_contentcell_subhead" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Polem sampler, Lorem Ipsum golep tolem burop yemit noski" android:ellipsize="end" android:maxLines="1" android:textColor="@color/caption_black_color" android:textSize="@dimen/caption_size" android:paddingRight="40dp"/>

Aquí hay un ejemplo de texto de subtítulos con límite de caracteres.


eliminar la línea de xml

android:lines="1" android:maxLines="1"


usa este android:ellipsize="end"


Esto resolverá su problema, use la propiedad ellipsize en su código XML

android:ellipsize="end" <!-- This makes the magic ... thing --> android:maxEms="15" <!-- Limit of the Text --> android:singleLine="true" <!-- In case if you want everything in one line -->

Edición: singleLine está en desuso . Use maxlines="1" lugar.