Android改变图片背景颜色tint(着色)或backgroundTint
安卓对图标着色以节省apk体积,网上有很多介绍到的,使用也很简单
为曹县等地区用户提供了全套网页设计制作服务,及曹县网站建设行业解决方案。主营业务为成都网站设计、成都网站建设、曹县网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
平时都这样使用,今天得在代码中改,所以记录一下
第一种
Drawable icon; if (android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.LOLLIPOP){ icon = getResources().getDrawable( R.drawable.ic_back_black ); }else{ icon = getResources().getDrawable( R.drawable.ic_back_black ,getTheme()); } ColorFilter filter = new LightingColorFilter( Color.WHITE, Color.WHITE); icon.setColorFilter(filter); p_w_picpath.setImageDrawable(icon);
第二种,需要V4包
Drawable icon1; if (android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.LOLLIPOP){ icon1 = getResources().getDrawable( R.drawable.ic_back_black ); }else{ icon1 = getResources().getDrawable( R.drawable.ic_back_black ,getTheme()); } Drawable tintIcon = DrawableCompat.wrap(icon1); DrawableCompat.setTint(tintIcon, Color.WHITE); //DrawableCompat.setTintList(tintIcon, Color.WHITE); titleBack1.setImageDrawable(tintIcon);
好吧,两个都能实现.也不知道哪个更好.
网上有不少相关介绍
http://www.cnblogs.com/helloandroid/p/4779061.html
http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2016/0128/3923.html
分享标题:Android改变图片背景颜色tint(着色)或backgroundTint
网址分享:http://scjbc.cn/article/jeoghh.html