Кнопка ведет себя очень странно

Возникла такая проблема: есть код кнопки:

<Button
            android:id="@+id/button_sign_out"
            android:layout_width="200dp"
            android:layout_height="35dp"
            android:layout_marginBottom="60dp"
            android:background="@drawable/sign_out"
            android:text="@string/exit"
            android:textColor="@color/black"
            android:fontFamily="@font/montserrat_bold"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintHorizontal_bias="0.497"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/progres_bar"
            app:layout_constraintVertical_bias="1.0">

        </Button>

Код background:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">

    <solid android:color="@color/btn_sign_out"/>
    <corners android:radius="26dp"/>
</shape>

После запуска должна была получиться розовая кнопка с текстом который идеально подходит. Так она собственно и выглядит на пререндере android studio, но при запуске на эмуляторе\устройстве выходит это

введите сюда описание изображения

Заранее спасибо


Ответы (1 шт):

Автор решения: IR42

Скорей всего у вас стоит MaterialTheme и вместо Button инфлейтится MaterialButton из библиотеки com.google.android.material:material, в которой background атрибут работает не так как ожидается https://stackoverflow.com/questions/52673053/cant-use-androidbackground-with-button-from-the-new-material-components

Замените android:background="@drawable/sign_out" на

app:backgroundTint="@color/btn_sign_out"
app:cornerRadius="26dp"

Атрибуты MaterialButton.

→ Ссылка