本文主要是介绍Android SVG图片资源使用VectorDrawable.setColorFilter动态改变颜色,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
近日项目中遇用到SVG图片需要根据app主题动态更改颜色的需求,经研究后总结以下方法:
int currentThemeColor;VectorDrawable drawable = (VectorDrawable) mContext.getDrawable(R.drawable.vb_bill_main_card_number_invisible);drawable.setColorFilter(new PorterDuffColorFilter(currentColor, PorterDuff.Mode.SRC_IN));
本质上SVG图片是一个VectorDrawable,获取drawable使用图片混合模式混合颜色,此方法适用于单色的svg资源,多色资源不适用。
效果(今日支出旁边眼睛图案):
另附图片混合模式的更多使用方式:
图片混合模式
这篇关于Android SVG图片资源使用VectorDrawable.setColorFilter动态改变颜色的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!