Android 后台可绘制未应用于按钮
这是登录按钮(登录按钮)的背景:Android 后台可绘制未应用于按钮,android,button,Android,Button,这是登录按钮(登录按钮)的背景: 这是我应用背景的按钮: 这是styles.xml文件: @颜色/原色 @颜色/原色暗 @颜色/颜色重音 尽管如此,按钮仍然是黑色的,没有应用drawable。如何修复它 要获得按钮中的可绘制渐变,必须将属性从Buton更改为androidx.appcompat.widget.AppCompatButton <androidx.appcompat.widget.AppCompatButton android:id="@+id/b
这是我应用背景的按钮:
这是styles.xml文件:
@颜色/原色
@颜色/原色暗
@颜色/颜色重音
尽管如此,按钮仍然是黑色的,没有应用drawable。如何修复它
要获得按钮中的可绘制渐变,必须将属性从Buton更改为androidx.appcompat.widget.AppCompatButton
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/btn_login"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="@dimen/loginViewsMargin"
android:background="@drawable/login_button_bk"
android:text="Login" />
同样,使用上面的方法来创建一个drawable将不会在您的按钮中产生涟漪效应,以添加使用此代码的按钮
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="@color/white">
<item>
<shape
android:shape="rectangle">
<corners android:radius="27dp" />
<gradient
android:angle="45"
android:centerX="35%"
android:endColor="#79EBFD"
android:startColor="#408bff"
android:type="linear" />
<size
android:width="182dp"
android:height="54dp" />
</shape>
</item>
</ripple>
要获得按钮中的可绘制渐变,必须将属性从Buton更改为androidx.appcompat.widget.AppCompatButton
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/btn_login"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="@dimen/loginViewsMargin"
android:background="@drawable/login_button_bk"
android:text="Login" />
同样,使用上面的方法来创建一个drawable将不会在您的按钮中产生涟漪效应,以添加使用此代码的按钮
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="@color/white">
<item>
<shape
android:shape="rectangle">
<corners android:radius="27dp" />
<gradient
android:angle="45"
android:centerX="35%"
android:endColor="#79EBFD"
android:startColor="#408bff"
android:type="linear" />
<size
android:width="182dp"
android:height="54dp" />
</shape>
</item>
</ripple>
只需按以下方式更改主题即可
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
@颜色/原色
@颜色/原色暗
@颜色/颜色重音
只需按以下方式更改主题即可
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
@颜色/原色
@颜色/原色暗
@颜色/颜色重音
您使用的是基于MaterialComponents
的主题,因此android:background
属性不起作用,默认情况下不支持渐变。查看此答案了解更多信息,请编写应用程序:backgroundTint=“@null”
。它是有效的。无需更改。您使用的是基于MaterialComponents
的主题,因此android:background
属性不起作用,默认情况下不支持渐变。查看此答案了解更多信息,请编写应用程序:backgroundTint=“@null”
。它是有效的。没有什么可更改的。如果有人想使用材质主题,但又想用渐变绘制背景,该怎么办?制作app:backgroundTint=“@null”
。如果有人想使用材质主题,但又想用渐变绘制背景,那该怎么办?制作app:backgroundTint=“@null”
。它是有效的。