一起Talk Android吧(第三百一十三回:ImageView常用属性二)

各位看官们,大家好,上一回中咱们说的是Android中ImageView常用属性的例子,这一回中咱们继续说该例子。闲话休提,言归正转。让我们一起Talk Android吧!


官们,我们在上一章回中介绍了ImageView的src属性,本章回中将介绍在此属性的基础上如何给控件添加滤镜。


添加滤镜相当于是给资源图片加一了层颜色,在项目中我们使用setColorFilter()方法来给资源图片添加滤镜。下面是一个截图:


图片中左侧是控件的配置信息,右侧是原始的图片,原始图片为灰色,我们通过下面的代码添加滤镜后灰色变成了红色:

        mImageView = (ImageView) findViewById(R.id.id_imgview_01);
        mImageView.setColorFilter(Color.RED, PorterDuff.Mode.SRC_ATOP);


该方法的函数原型如下:
public final void setColorFilter (int color, PorterDuff.Mode mode)

  • 第一个参数表示滤镜的颜色
  • 第二个参数用来控制图层和显示模式

该参数的值以及其含义可以参考官方文档icon-default.png?t=L9C2https://developer.android.google.cn/reference/android/graphics/PorterDuff.Mode#SRC_ATOP
文档写的非常详细而且本有图形演示,我们就不再详细介绍了。


setColorFilter()方法是重载方法,另外一个重载方法中只第一个参数(上面介绍的方法有两个参数),相当于把第二个参数设置为PorterDuff.Mode#SRC_ATOP,这可以从源代码中看出来。

给ImageView添加滤镜时通常使用于icon类图标,这样可以统一图标的显示效果而且不用关心图标自身的颜色。当然也可以给资源图片添加滤镜。我们只介绍添加滤镜的方法,添加到什么目标上呢?大家可以依据项目的需求自行决定。


各位看官,关于Android中ImageView常用属性的例子咱们就介绍到这里,欲知后面还有什么例子,且听下回分解!

猜你喜欢

转载自blog.csdn.net/talk_8/article/details/120731638