美文网首页AndroidAndroid知识Android开发经验谈
解决 Button 设置 background 之后点击动画效果

解决 Button 设置 background 之后点击动画效果

作者: ayuhani | 来源:发表于2017-07-31 14:56 被阅读114次

    文章同步自 CSDN:http://blog.csdn.net/qq_24867873/article/details/76423514

    在 Android 5.0 推出之后,点击 Button 默认增加了水波纹的动画效果。但是按照往常的方式给 Button 设置了 background 之后,发现水波纹效果没有了。

    四角尖尖,而且点击时给人感觉很突兀。

    不过到了现在我才知道是添加颜色的方式不对。

    正确的改变 Button 颜色的姿势如下:

    首先在 values/styles.xml 文件中添加如下风格:

    <style name="BlueButtonStyle" parent="ThemeOverlay.AppCompat">
        <item name="colorButtonNormal">@android:color/holo_blue_light</item>
    </style>
    

    或者是:

    <style name="RedButtonStyle" parent="Widget.AppCompat.Button.Borderless">
        <item name="colorButtonNormal">@android:color/holo_red_light</item>
    </style>
    

    这两种主题都可以,尝试之后,发现效果一致。

    在 xml 文件中使用:

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="16dp"
        android:text="Button"
        android:textAllCaps="false"
        android:textColor="@android:color/white"
        android:theme="@style/RedButtonStyle"/>
    

    水波纹效果出来了。

    其中有一行 android:textAllCaps="false" 可以解除 Button 对文本大写的限制。

    欢迎关注我的微信公众号

    相关文章

      网友评论

        本文标题:解决 Button 设置 background 之后点击动画效果

        本文链接:https://www.haomeiwen.com/subject/gdhrlxtx.html