Andriod Studio 按钮颜色没有改变

时间:2021-04-06 12:59:09

标签: xml android-studio button

在我的 android 应用程序中,我希望其中一个按钮的角变圆并且其颜色与默认值不同。我创建了一个可以实现此目的的 xml 文件。将此 xml 文件设置为按钮的背景后,形状已更改,但颜色保持默认。我尝试将此 xml 文件设置为 TextView 的背景,并且效果很好。 button_shape.xml:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <corners android:radius="20dp" />
    <solid android:color="#03A9F4" />
</shape>

按钮:

<Button
    android:id="@+id/btRandom"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="250dp"
    android:background="@drawable/button_shape"
    android:text="MyButton"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@id/tvTitle" />

1 个答案:

答案 0 :(得分:0)

将文件夹 res--> values--> themes --> themes.xml 下的 Theme.AppCompat.DayNight.DarkActionBar 替换为 android:background="@color/black"。在 android studio 4.1 中,默认情况下已经在按钮上应用了一个主题。然后你可以简单地说:例如 const newArr = [] for (const item of urls) { const url = item.url; const ID = url.slice(url.search("=", 0) + 1, url.length); const YtResponse = GetByIdYouTube(ID); const data = await YtResponse; const date = item.date; const newItem = { data, url, date }; newArr.push(newItem) } setDisplay(...display, newArr) };```