Свойство радиуса угла отсутствует на MaterialButton после обновления до материала 1.2.0

Вот мой код MaterialButton:

<com.google.android.material.button.MaterialButton
    android:id="@+id/next_button"
    android:layout_width="224dp"
    android:layout_height="wrap_content"
    android:layout_alignParentStart="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentBottom="true"
    android:layout_marginStart="68dp"
    android:layout_marginTop="510dp"
    android:layout_marginEnd="68dp"
    android:layout_marginBottom="68dp"
    android:background="@color/colorPrimary"
    android:minHeight="60dp"
    android:text="@string/onboarding_next_button"
    android:textColor="@android:color/white"
    app:cornerRadius="25dp" />

После обновления библиотеки материалов с 1.1.0 до 1.2.0 приложение:CornerRadius игнорируется. Я пытаюсь с темой формы следовать документации по материалам, но элемент управления все еще полностью квадратный

1 ответ

Решение

Использовать app:backgroundTint вместо того android:background

<com.google.android.material.button.MaterialButton
   app:backgroundTint="@color/colorPrimary"
   .../>

Начиная с 1.2.0 можно использовать android:background в MaterialButton. Использование кастомного андроида: фон по умолчаниюMaterialShapeDrawableне используется, и некоторые функции, такие как обводка, внешний вид формы, радиус углов, рябь, не заданы (поскольку они связаны сMaterialShapeDrawable), и вы должны предоставить им свой собственный фон

Поскольку вы используете простой цвет в качестве фона, просто используйте app:backgroundTint.