TabBarItem的图片默认颜色
2015-03-12 00:00
127 查看
摘要: 去除 TabBarItem的图片默认颜色
TabBarItem的图片默认颜色 让我甚是头痛,美工MM说灰色的好丑 T_T
1.iOS7以下
查阅了相关文档,这样一个方法
不过你也看到了,这iOS7开始就弃用了,但至少还能用,如果不介意那烦人的警告的话;
2.iOS7以上
那警告实在闹心,根据警告内容,我又查了资料,结果比较有趣
有一个共同点就是图片多调用了
也就是设置了UIImageRenderingMode,下面是枚举
3.以上只就解决了图片颜色问题还有文字 颜色还是默认的颜色
附上一个颜色宏
参考:http://stackoverflow.com/questions/19563193/uitabbaritem-setfinishedselectedimage-deprecated-in-ios7
TabBarItem的图片默认颜色 让我甚是头痛,美工MM说灰色的好丑 T_T
1.iOS7以下
查阅了相关文档,这样一个方法
/* These methods are now deprecated. Please use -initWithTitle:image:selectedImage:. */ - (void)setFinishedSelectedImage:(UIImage *)selectedImage withFinishedUnselectedImage:(UIImage *)unselectedImage NS_DEPRECATED_IOS(5_0,7_0,"Use initWithTitle:image:selectedImage: or the image and selectedImage properties along with UIImageRenderingModeAlwaysOriginal");
不过你也看到了,这iOS7开始就弃用了,但至少还能用,如果不介意那烦人的警告的话;
2.iOS7以上
那警告实在闹心,根据警告内容,我又查了资料,结果比较有趣
//UITabBar设置未选中图片 [yourTabBarItem setImage:[[UIImage imageNamed:@"more.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]]; //UITabBar设置选中图片 [yourTabBarItem setSelectedImage:[[UIImage imageNamed:@"more.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
有一个共同点就是图片多调用了
// Create a version of this image with the specified rendering mode. By default, images have a rendering mode of UIImageRenderingModeAutomatic. - (UIImage *)imageWithRenderingMode:(UIImageRenderingMode)renderingMode NS_AVAILABLE_IOS(7_0);
也就是设置了UIImageRenderingMode,下面是枚举
它使用UIImageRenderingMode枚举值来设置图片的renderingMode属性。该枚举中包含下列值: UIImageRenderingModeAutomatic // 根据图片的使用环境和所处的绘图上下文自动调整渲染模式。 UIImageRenderingModeAlwaysOriginal // 始终绘制图片原始状态,不使用Tint Color。 UIImageRenderingModeAlwaysTemplate // 始终根据Tint Color绘制图片,忽略图片的颜色信息。
3.以上只就解决了图片颜色问题还有文字 颜色还是默认的颜色
//设置未选中字体颜色 [[UITabBarItem appearance] setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:UIColorFromRGB(0x003500), NSForegroundColorAttributeName, nil] forState:UIControlStateNormal]; //设置选中字体颜色 [[UITabBarItem appearance] setTitleTextAttributes: [NSDictionary dictionaryWithObjectsAndKeys: UIColorFromRGB(0xff3500), NSForegroundColorAttributeName, nil] forState:UIControlStateSelected];
附上一个颜色宏
/** Create a UIColor from a hex value. For example, `UIColorFromRGB(0xFF0000)` creates a `UIColor` object representing the color red. */ #define UIColorFromRGB(rgbValue) \ [UIColor \ colorWithRed:((float)((rgbValue & 0xFF0000) >> 16))/255.0 \ green:((float)((rgbValue & 0x00FF00) >> 8))/255.0 \ blue:((float)(rgbValue & 0x0000FF))/255.0 \ alpha:1.0]
参考:http://stackoverflow.com/questions/19563193/uitabbaritem-setfinishedselectedimage-deprecated-in-ios7
相关文章推荐
- 设置 TabBarItem 选中时的图片及文字颜色
- Swift之修改选中TabBarItem图片时显示的默认蓝色
- storyboard创建的:设置tabbar的item选中状态的颜色和图片
- tabbar Item图片原色显示以及标题字体大小颜色控制
- iOS小问题---设置TabBarItem的字体大小、颜色,各种状态下的图片
- 如何实现点击tabBar,让item改变图片,或者说是改变颜色
- Tabbar 的 tabBarItem 图片背景颜色修改
- iOS开发之--如何修改TabBarItem的title的字体和颜色/BarButtonItem的title的字体大小和颜色/添加背景图片,并添加点击方法
- 解决iOS8以上系统下app底部UITabBarItem上自定义的背景色和图片,在首次启动或push之后再pop回去会变成系统默认颜色-蓝色问题
- IOS UITabBar+UINavigation(改变背景/标题文字颜色、状态图片、tabbar选中方形背景、item间距)
- fileprivate、swift “??”用法含义、关于tabbaritem自定图片颜色显示
- 未选中的TabBarItem的图标颜色,默认是灰色的,该怎么设置默认为白色。
- TabBar 的selecedImage无法显示设置图片问题 和item文字颜色选中设置
- 设置tabBarItem字体颜色和图片颜色
- 【iOS开发】设置TabBarItem上文字跟图片一样的颜色
- 设置tabbaritem的title的颜色及按钮图片
- iOS7修改UITabBar文本颜色以及解决自定义选中图片显示为默认蓝色的问题
- UITabbar 中的 item的字体颜色 item点击后的tint颜色 和图片颜色的修改 UINavigationBar字体设置
- 子控制器tabBarItem底部选中图片显示为自己配置的 不让系统渲染
- ios之UITabBarItem显示真实自定义的图片而非颜色填充