当API版本为21或更高版本时,会有一些代码加载纹波。
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
viewHolder.container.setForeground(context.getResources().getDrawable(type.rippleId));
}
但在那里,我为特定类型加载了drawable。这是我的类型:
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;
}
}
我想要做的是,具有通用的涟漪效应,并从类型中加载颜色。因为如果明天我有另一种类型,我需要创建另一种波纹,另一种颜色,它不灵活。
我看得很快,但没有办法设置颜色。它是一套可绘制的东西。
我想知道是否有创建drawable(来自代码或XML)的简洁方法,并设置颜色。
非常感谢您的帮助。 :)