【问题标题】:Android RippleEffect not shown when setting custom background设置自定义背景时未显示 Android RippleEffect
【发布时间】:2016-03-22 19:33:13
【问题描述】:

我的目标是创建一个具有白色背景的简单 CardView,并在单击它时产生涟漪效果。通过启用涟漪效应:

android:clickable="true"
android:foreground="?android:attr/selectableItemBackground"

显示波纹。但此时,背景是深灰色。所以让我们把它改成白色

card_view:cardBackgroundColor="#FFFFFF"

现在我的 CardView 是白色的,但不再有波纹了。无论我尝试什么,要么只得到波纹,要么只得到白色背景。

希望你能帮助我! 谢谢

【问题讨论】:

    标签: android android-cardview ripple


    【解决方案1】:

    查看详情 Material effect on button with background color

    创建一个 xml 可绘制对象并用作您的背景 (API 21+)。

      <?xml version="1.0" encoding="utf-8"?>
        <ripple xmlns:android="http://schemas.android.com/apk/res/android"
                android:color="?attr/colorControlHighlight">
            <item android:drawable="?attr/colorPrimary"/>
        </ripple>
    

    【讨论】:

    • 谢谢。我创建了一个 xml drawable 并将其放在 drawable 文件夹中。但 AndroidStudio 不会让我选择它作为 card_view:cardBackgroundColor="@color/..."。有什么想法吗?
    • 用这个属性设置你的背景:android:foreground = //ripple bacground sample usage:stackoverflow.com/a/30046813/5923606
    • 完美运行。谢谢老哥!
    猜你喜欢
    • 2021-10-17
    • 2011-08-22
    • 2011-11-30
    • 1970-01-01
    • 2015-01-14
    • 2017-04-14
    • 2011-12-27
    • 2012-03-09
    • 1970-01-01
    相关资源
    最近更新 更多