【问题标题】:Android how to create a generic ripple effect?Android如何创建通用的涟漪效果?
【发布时间】:2015-03-02 09:41:51
【问题描述】:

当 API 版本为 21 或更高版本时,有些代码会加载波纹。

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {           
    viewHolder.container.setForeground(context.getResources().getDrawable(type.rippleId));
}

但是在那里,我为特定类型加载了可绘制对象。这是我的类型:

public enum Type {

    GREEN(R.color.green_1, R.drawable.ripple_green_1),
    PINK(R.color.pink_1, R.drawable.ripple_pink_1),

    public int colorId, rippleId;

    private Type(int colorId, int rippleId) {
        this.colorId = colorId;
        this.rippleId = rippleId;
    }

}

我想做的是有一个通用的涟漪效应,并从类型中加载颜色。因为如果明天我有另一种类型,我需要创建另一个可以绘制的波纹,用另一种颜色,它不灵活。

我很快看了一下,但没有办法设置颜色。它是一组可绘制对象或其他东西。

我想知道是否有干净的方法来创建可绘制对象(从代码或 XML)并设置颜色。

您的帮助将不胜感激。 :)

【问题讨论】:

标签: android optimization enums android-5.0-lollipop ripple


【解决方案1】:

检查此ripple effect library 并尝试在您的应用中实现该示例。

this 用于您的目的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-08-25
    • 2021-02-25
    • 1970-01-01
    • 2015-03-23
    • 1970-01-01
    • 1970-01-01
    • 2019-12-07
    相关资源
    最近更新 更多