应用于背景按钮时,边框背景变为纯色

border background is getting solid color when applying to a background button

我创建了一个带边框 rectangle_border.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" />

<size
    android:width="50dp"
    android:height="20dp" />

<stroke
    android:width="2dp"
    android:color="@color/White_Flight" />

我有一个按钮,我在其中将背景设置为 rectangle_border:

            <com.google.android.material.button.MaterialButton
                android:id="@+id/loginPage"
                android:layout_width="87dp"
                android:layout_height="27dp"
                android:layout_marginBottom="10dp"
                android:background="@drawable/rectangle_border"
                android:text="@string/login"
                android:textColor="@color/dark_blue"
                android:textSize="8sp"
                app:backgroundTint="@color/White_Flight"
                app:layout_constraintBottom_toBottomOf="@id/home_background"
                app:layout_constraintLeft_toLeftOf="parent"
                app:layout_constraintRight_toLeftOf="@id/registerPage" />

问题是按钮变成了纯色。

这是按钮:

这里是 rectangle_border:

我对您的背景可绘制对象和 ImageView 属性做了一些更改

为drawable添加纯透明色并移除size,你不需要它。

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

    <solid android:color="#00ffffff"/>

    <stroke
        android:width="2dp"
        android:color="@color/black" />
</shape>

我删除了 backgroundTint 属性

 <com.google.android.material.button.MaterialButton
        android:id="@+id/loginPage"
        android:layout_width="87dp"
        android:layout_height="27dp"
        android:layout_marginBottom="10dp"
        android:background="@drawable/rectangle_border"
        android:text="@string/login"
        android:textColor="@color/dark_blue"
        android:textSize="8sp"
        app:layout_constraintBottom_toBottomOf="@id/home_background"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toLeftOf="@id/registerPage" />

如果这对你有用,请告诉我。