我在我的代码中使用了vector drawable。基于某些条件,我需要改变drawable的颜色。使用下面的代码来实现它。
Drawable drawable = VectorDrawableCompat.create(context.getResources(),
R.drawable.icon_vector_star, null);
if(drawable != null) {
drawable = drawable.mutate();
drawable = DrawableCompat.wrap(drawable);
//Change the tint to grey to mark it disabled.
DrawableCompat.setTint(drawable,
ContextCompat.getColor(context, R.color.grey));
DrawableCompat.setTintMode(drawable, PorterDuff.Mode.SRC_IN);
imageView.setImageDrawable(drawable);
} else {
Log.e(LOG_TAG, "Error while creating vector drawable");
}
这样做会对性能产生影响吗?我应该使用另一个向量 可绘制的不同颜色,只需设置它?请建议。