2016.7.8更新:
其实只要在UITabBarController中做如下设置即可:
UIImage * normalImage = [[UIImage imageNamed:@"sy1.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
UIImage * selectImage = [[UIImage imageNamed:@"sy.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
NSArray *array = self.viewControllers;
UINavigationController * nav = (UINavigationController *)array[0];
nav.tabBarItem.image = normalImage;
nav.tabBarItem.selectedImage = selectImage;
nav.tabBarItem.title = @"首页";
使用UITabBarController时经常需要给每一个tabBarItem设置自己的图片,图片有两种状态一种未选中状态,另一种选中状态。默认情况下未选中状态是灰色,选中状态为蓝色,即使你设置了图片也不会显示出清晰的图片。如下图一样。
1.默认图标状态
所以如果希望出现如下效果则需要自定义图片。步骤如下:
一、所使用的图片有如下标准样式
30*30像素大小、150dpi(分辨率)、透明背景、png格式。调整这些参数可以用mac自带的预览软件来调整。大小和dpi可以通过预览“工具”中的对应操作。
这里解释透明背景怎么做:
二、自定义tabBarItem.image属性
//通过如下事例代码即可。如果想让显示图标为自己的图片而不是未选中时为灰色,选中后为蓝色时需自定义图片.
//设置图片呈现模式不作为模版图片,这样不会忽略颜色信息。
self.tabBarItem.image = [[UIImage imageNamed:@"wechat.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
//设置选中后的图片
self.tabBarItem.selectedImage = [[UIImage imageNamed:@"wechat2.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
效果如图:
2.1 2.2
网友评论