android button android-5.0-lollipop spannable

El botón setText con Spannable no funciona para Android 5.0 Lollipop



button android-5.0-lollipop (1)

Por defecto, los botones Material están diseñados para mostrar texto en mayúsculas. Sin embargo, hay un error en AllCapsTransformationMethod utilizado para las mayúsculas que hace que descarte datos de Spannable .

Puede anular el estilo del botón predeterminado y desactivar las mayúsculas al especificar android:textAllCaps="false" en su Button .

<Button ... android:textAllCaps="false" />

Tengo un Button simple:

<Button android:id="@+id/test" android:textColor="@color/white" android:layout_width="wrap_content" android:layout_height="wrap_content" />

y tratar de cambiar la propiedad de texto por:

SpannableString span = new SpannableString(text); span.setSpan(new AbsoluteSizeSpan(8, true), 5, 10, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); testButton.setText(span);

Funciona en Android 4.3 pero no en 5.0.

Lo interesante es que cuando cambio la implementación de Button a TextView funciona bien en 5.0. Parece ser algo con Button en Lollipop.