如何删除按钮阴影(android)

sou*_*eel 132 android button shadow

我想从按钮上移除阴影,使其看起来更平坦.

我现在有这个:

带阴影的取消按钮

但我想要这个:

取消按钮没有阴影

Alt*_*Cat 341

另一种选择是添加

style="?android:attr/borderlessButtonStyle"
Run Code Online (Sandbox Code Playgroud)

到你的Button xml,如 http://developer.android.com/guide/topics/ui/controls/button.html所述

一个例子是

<Button
android:id="@+id/button_send"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button_send"
android:onClick="sendMessage"
style="?android:attr/borderlessButtonStyle" />
Run Code Online (Sandbox Code Playgroud)

  • 另外,我为我的按钮使用自定义样式.您可以扩展您的自定义样式:<style name ="MyCustomButtonStyle"parent ="Widget.AppCompat.Button.Borderless"> (29认同)

Alo*_*gan 96

一个更简单的方法是将此标记添加到按钮:

android:stateListAnimator="@null"
Run Code Online (Sandbox Code Playgroud)

虽然它需要API等级21或更高..

  • 对我很有帮助 (2认同)
  • 我更喜欢这种方法,它更灵活。 (2认同)

郑松岚*_*郑松岚 51

我使用自定义样式

<style name="MyButtonStyle" parent="@style/Widget.AppCompat.Button.Borderless"></style>
Run Code Online (Sandbox Code Playgroud)


Mic*_*ael 39

Java的

setStateListAnimator(null);
Run Code Online (Sandbox Code Playgroud)

XML

android:stateListAnimator="@null"
Run Code Online (Sandbox Code Playgroud)

  • 简单干净。 (2认同)

ghu*_*ang 22

尝试: android:stateListAnimator="@null"

  • 虽然这可以解决OP的问题,但我建议添加一些上下文.为什么会有帮助?此外,"试试这个"有点误导.你确定它会解决问题,还是只是猜测?如果是这样,你应该写一个评论. (9认同)

Ron*_*nfe 17

它需要 API 级别 21

        android:outlineProvider="none"
Run Code Online (Sandbox Code Playgroud)


Efi*_*i G 7

物料设计按钮添加到按钮xml: style="@style/Widget.MaterialComponents.Button.UnelevatedButton"


dlo*_*ani 6

使用它作为按钮的背景可能有所帮助,可根据需要更改颜色

<?xml version="1.0" encoding="utf-8" ?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" >
        <shape android:shape="rectangle">
            <solid android:color="@color/app_theme_light" />
            <padding
                android:left="8dp"
                android:top="4dp"
                android:right="8dp"
                android:bottom="4dp" />
        </shape>
    </item>
    <item>
        <shape android:shape="rectangle">
            <solid android:color="@color/app_theme_dark" />
            <padding
                android:left="8dp"
                android:top="4dp"
                android:right="8dp"
                android:bottom="4dp" />
        </shape>
    </item>
</selector>
Run Code Online (Sandbox Code Playgroud)

  • 你能解释一下这是怎么回事吗?它没有为我删除阴影. (4认同)