iOS7.0之后,UIImage有一个新增方法imageWithRenderingMode:,通过它设置图片的渲染模式,再通过设置tintcolor,就可以改变图片颜色。其中参数部分UIIMageRenderingMode有三个枚举对应不同的渲染模式:
UIImageRenderingModeAutomatic // 根据图片的使用环境和所处的绘图上下文自动调整渲染模式。
UIImageRenderingModeAlwaysOriginal // 始终绘制图片原始状态,不使用Tint Color。
UIImageRenderingModeAlwaysTemplate // 始终根据Tint Color绘制图片,忽略图片的颜色信息。
使用实例:
UIImage *image = [UIImage imageNamed:@"qr-code"];
self.ImageView.image = [image imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];
[self.ImageView setTintColor:[UIColor redColor]];
作者:雪山飞狐_91ae
链接:https://www.jianshu.com/p/10047407463c
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。