Java 如何使用xml文件设置按钮的背景色?

Java 如何使用xml文件设置按钮的背景色?,java,android,xml,android-studio,colors,Java,Android,Xml,Android Studio,Colors,我创建了这个xml <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android" > <item> <shape android:shape="rectangle"> <

我创建了这个xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"  >
    <item>
        <shape android:shape="rectangle">
        <gradient
            android:startColor="@color/light_blue"
            android:centerColor="@color/dark_blue"
            android:endColor="@color/light_purple"
           >
        </gradient>
            <corners
                android:radius="30dp">

            </corners>

        </shape>

    </item>

</selector>

我试图将此文件设置为我的按钮背景。但问题是背景不接受xml文件的颜色。这是使用背景色调,而不是我上面设置的颜色

这是我的活动

<Button
    android:id="@+id/temp_l"
    android:layout_width="250dp"
    android:layout_height="33dp"
    android:background="@drawable/temp_shape"
    app:layout_constraintBottom_toTopOf="@+id/scrollView2"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.497"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    app:layout_constraintVertical_bias="0.143" />

我在youtube上搜索,发现每个人都做了我做的事,但他们得到了结果,而我没有


对不起,我的英语不太好。

我想你是在用
android:backgroundTint=“@null”
android
命名空间,但是你需要用
app:backgroundTint=“@null”
命名空间来代替

旁注:

只要不需要使用
选择器
,就应该将xml drawable包装到
层列表
,因此可以将其更改为:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape android:shape="rectangle">
            <gradient
                android:centerColor="#055D93"
                android:endColor="@color/light_purple"
                android:startColor="@color/light_blue" />
            <corners android:radius="30dp">

            </corners>

        </shape>

    </item>
</layer-list>

预演


您是在使用
androidx
软件包中的
MaterialButton
还是
AppCompatButton
吗?不,是它的常规按钮。我没有使用任何软件包创建。非常感谢。此行:app:backgroundTint=“@null”解决了我的问题。