OC

一、点击后的tabbar按钮的文字和图片是默认的蓝色,而不是程序员定义好的选中图片。

1. 这是因为tabbarController的 selectedImage会自动进行渲染。

2. 解决办法:

 第一种 : 使用 以下的方法:

UIImage *mSelectedImage = [UIImage imageNamed:@"tabBar_essence_click_icon"];

// 这个是主要的
mSelectedImage = [mSelectedImage imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]; essenceVC.tabBarItem.selectedImage = mSelectedImage;

3. imageWithRenderingMode方法的作用是 : 设置UIImage的渲染模式

有三种模式:

  1. UIImageRenderingModeAutomatic  // 根据图片的使用环境和所处的绘图上下文自动调整渲染模式。  
  2. UIImageRenderingModeAlwaysOriginal   // 始终绘制图片原始状态,不使用Tint Color。  
  3. UIImageRenderingModeAlwaysTemplate   // 始终根据Tint Color绘制图片,忽略图片的颜色信息。  

4. 第二种: 点击 图片 ,选择右侧的 “实用工具栏” -> 最右边的 -> "Render  As" -> 选“Original Image”.

如图:

 

原文地址:https://www.cnblogs.com/iOS363536404/p/5590461.html