美文网首页
[Android] Ripple效果应用在按钮上

[Android] Ripple效果应用在按钮上

作者: 轻记事APP | 来源:发表于2020-05-11 14:40 被阅读0次

    记录

    今天在测试做完的界面上,发现了某些按钮样式比较单调,点击的时候没有任何响应,实在是很生硬,于是加入ripple效果提升用户体验。

    ripple.xml

    <?xml version="1.0" encoding="utf-8"?>
    <ripple xmlns:android="http://schemas.android.com/apk/res/android"
        android:color="@color/hint_gray">
    
        <item android:drawable="@drawable/shape_round_blue" />
    
    </ripple>
    
    正常ripple效果

    讲解

    1. android:color 是水波纹的颜色,就是触摸的时候会显示颜色。
    2. <item>是ripple默认显示的drawable,没有触摸的时候会默认显示。
    3. <item>可以有多个,其中可以设置一个id为R.id.mask的遮罩层(可以限制水波纹的显示)。

    mask的遮罩效果(显示为椭圆并限制水波纹显示范围)

    <!-- mask_shape.xml -->
    <?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="oval">
        <solid android:color="@color/colorAccent" />
    </shape>
    
    <?xml version="1.0" encoding="utf-8"?>
    <ripple xmlns:android="http://schemas.android.com/apk/res/android"
        android:color="@color/hint_gray">
    
        <item android:drawable="@drawable/shape_round_blue" />
    
        <item
            android:id="@android:id/mask"
            android:drawable="@drawable/mask_shape">
        </item>
    
    </ripple>
    
    ripple显示在椭圆内效果

    相关文章

      网友评论

          本文标题:[Android] Ripple效果应用在按钮上

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