stroke 属性不适用于 android studio 中的按钮

stroke attribute isn't working for a button in android studio

这是我的 Buttons.xml 文件

    <?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
    <corners android:radius="50dp"/>
    <gradient android:startColor="#8E8816"
        android:endColor="#145038"
        android:angle="270" />
    <stroke android:color="#680D0D" android:width="5dp"/>

</shape>

这是我的 activity_main.xml 我尝试将 android:background 更改为 android:src,但它也不起作用

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/teal_700"
    tools:context=".MainActivity">

    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/buttons"
        android:text="Button" />
</RelativeLayout>

只有 corners 属性工作正常

不仅笔触没变,背景也没变 我不知道哪里做错了...谁能帮帮我

此处应用背景后按钮的外观为 android:background="@drawable/buttons" Button_image

这是因为如果您使用 MaterialComponents 主题和 MaterialButton [=16= 的默认样式,Button 会自动替换为 MaterialButton ] 与 colorPrimary.

你必须使用:

<Button
    android:background="@drawable/buttons"
    app:backgroundTint="@null"
    ... />