Атрибут android:background
не будет работать с MaterialButton , поскольку он использует его внутри. Я думаю, что они сделали возможным изменить его в последней альфа-версии библиотеки, но еще не в стабильных версиях. Итак, вот как вы собираетесь это сделать.
Во-первых, убедитесь, что тема вашего приложения наследуется от темы материала, чтобы мы могли использовать все атрибуты материала (вы можете использовать любую из тем материалов ).
<style name="AppTheme" parent="Theme.MaterialComponents.Light.DarkActionBar">
...
</style>
Теперь определите стиль для ShapeAppearance кнопки MaterialButton .
<style name="shapeAppearance">
<item name="cornerSizeTopLeft">20dp</item>
</style>
Наконец, используйте его в своем XML код, в котором вы определяете кнопку.
<com.google.android.material.button.MaterialButton
android:id="@+id/loginButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.MaterialComponents.Button"
app:shapeAppearance="@style/shapeAppearance"
android:text="@string/main_fragment_login_label"/>
Теперь ваша кнопка должна выглядеть так, как показано ниже, а это именно то, что вы ищете.
введите описание изображения здесь