Autosizing de TextView no funciona (Android O)

Utilizo la nueva característica del autosize agregada en la biblioteca de ayuda 26. He leído una documentación que se puede encontrar aquí: https://developer.android.com/preview/features/autosizing-textview.html

Supongo que debería funcionar de esta manera: Puede habilitar el dimensionamiento automático con este atributo: app:autoSizeTextType="uniform" . Creo que TextView debe usar todo el espacio disponible para mostrar un texto completo (no sólo una parte – no debe ser recortada) y el textSize del textSize debe ser lo más grande posible. Si necesita limitar un tamaño máximo o mínimo del texto, puede utilizar estos dos atributos:

 app:autoSizeMinTextSize="XXsp" // (you can also use px or dp values.) 

o

 app:autoSizeMaxTextSize="XXsp" 

Hasta aquí todo bien. Digamos que necesito un TextView con 56dp de ancho. Tengo textos con una longitud diferente y quiero configurar estos textos para este TextView . Debe redimensionarse automáticamente para que muestre todo el texto (todos los caracteres + no recortado) en el tamaño de texto más grande posible.

Este es mi TextView:

 <android.support.v7.widget.AppCompatTextView android:id="@+id/vName" style="@style/TextView.AutoSize" android:layout_width="56dp" android:gravity="bottom|center_horizontal" android:maxLines="1" app:autoSizeMinTextSize="1px" app:autoSizeTextType="uniform" app:layout_constraintBottom_toTopOf="@id/vGuideline" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" /> 

Desafortunadamente, la vista de texto se recorta. Quería establecer esta cadena como un texto para el texto anterior: "Groupa", pero este es el resultado: Introduzca aquí la descripción de la imagen

(TextView está dentro de ConstraintLayout con fondo de círculo amarillo.)

Como se puede ver, la vista de texto no se redimensiona en absoluto. ¿Tienes alguna idea de qué hacer?

Gracias.

    ¿Ha intentado configurar todos los cuatro atributos descritos en el enlace que publicó?

    P.ej

     app:autoSizeTextType="uniform" app:autoSizeMaxTextSize="13sp" app:autoSizeMinTextSize="5sp" app:autoSizeStepGranularity="1sp" 

    También puede intentar establecer el ancho y la altura en wrap_content y establecer minWidth y maxWidth en 56dp.

    Como posible también se menciona en los comentarios, maxlines parece causar problemas (para mí también), así que intente quitar eso (el autosizing probablemente debería cuidar de esto, reduciendo el textsize).

    Tuve el mismo problema. Lo solucioné cambiando dos líneas en mi gradle: compile 'com.android.support:support-v4:26.0.1' compile 'com.android.support:appcompat-v7:26.0.1' Para ajustar textos más largos tienes que Agregue las cuatro opciones, como esto:

     <android.support.v7.widget.AppCompatTextView android:layout_width="match_parent" android:layout_height="match_parent" android:text="@string/your_string" app:autoSizeTextType="uniform" app:autoSizeMaxTextSize="13sp" app:autoSizeMinTextSize="5sp" app:autoSizeStepGranularity="1sp"/> 

    He probado esto para algunas situaciones, y tengo la siguiente conclusión:

    Debe tener anchura y altura acotadas. Por ejemplo, si match_parent ancho como " match_parent pero wrap_content para la altura, creo que Android no sabe cuán alto desea estirar el texto. En tu ejemplo no tienes una altura específica, así que creo que por eso no funciona.

    Por ejemplo:

    Ajustar la altura del contenido de un texto

    Altura específica para un texto

    No sé por qué el documento oficial de Android utilizaría wrap_content como ejemplo …

    Y como se puede ver, no utilicé otros atributos en mi ejemplo, por lo que probablemente no sea el problema de los atributos incorrectos.

    Y, sí, el TextView que estoy utilizando es android.support.v7.widget.AppCompatTextView .

    Y siempre y cuando esté utilizando la biblioteca de soporte 26.0.0 o superior, es suficiente.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.