博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS7 UITabBar自定义选中图片显示为默认蓝色的Bug
阅读量:4293 次
发布时间:2019-05-27

本文共 1262 字,大约阅读时间需要 4 分钟。

今天在UITabBarController使用自定义图片设置UITabItem时,发现一个问题:

在iOS7以上的手机中,第一个Tab的选中图一直显示的是系统默认的蓝色图,查看了一下UITabItem的头文件,发现下面的内容:

 

C代码  
  1. /* The unselected image is autogenerated from the image argument. The selected image 
  2.  is autogenerated from the selectedImage if provided and the image argument otherwise. 
  3.  To prevent system coloring, provide images with UIImageRenderingModeAlwaysOriginal (see UIImage.h) 
  4.  */  
  5. - (instancetype)initWithTitle:(NSString *)title image:(UIImage *)image tag:(NSInteger)tag;  
  6. - (instancetype)initWithTitle:(NSString *)title image:(UIImage *)image selectedImage:(UIImage *)selectedImage NS_AVAILABLE_IOS(7_0);  
  7. - (instancetype)initWithTabBarSystemItem:(UITabBarSystemItem)systemItem tag:(NSInteger)tag;  

意思是,如果不希望使用系统颜色,需要对图片加上属性UIImageRenderingModeAlwaysOriginal

所以按此方式实验,代码如下:

 

C代码  
  1. UIImage *musicImage = [UIImage imageNamed:@"music.png"];  
  2. UIImage *musicImageSel = [UIImage imageNamed:@"musicSel.png"];  
  3.   
  4. musicImage = [musicImage imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];  
  5. musicImageSel = [musicImageSel imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];  
  6.   
  7. self.musicViewController.tabBarItem = [[UITabBarItem alloc] initWithTitle:@"Music" image:musicImage selectedImage:musicImageSel];  

 

问题解决

转自:http://thierry-xing.iteye.com/blog/2171602 

转载地址:http://qpfws.baihongyu.com/

你可能感兴趣的文章
Invalid DISPLAY variable
查看>>
vscode读取相对路径的问题处理
查看>>
将AnacondaShell添加到鼠标右键
查看>>
C/C++中的报错踩坑
查看>>
VS中链接库以及动态库文件配置的问题
查看>>
c++多线程编程:C2672
查看>>
VS提示LNK1181,无法打开XXX.lib
查看>>
c/c++错误:LNK2019
查看>>
tensorflow1.13 + gpu + C++环境编译配置
查看>>
C++ 错误:C2664:无法将参数 2 从“char [256]”转换为“LPWSTR”
查看>>
Tensorrt部署时,显示算例不匹配报错的解决方法
查看>>
关于C++中vector和deque的使用效率测试记录
查看>>
C++:tensorrt-C++实现,加载enigen错误
查看>>
OpenCV C++:imshow显示不成功,灰色窗口
查看>>
C++: C2572默认参数重定义
查看>>
C++: MSC3721错误
查看>>
OpenCV C++ : 画面鼠标操作
查看>>
C++:全局变量-多个文件共享的全局变量
查看>>
Git:修改git用户名后,本地push报错问题
查看>>
Linux: 文件查找/指定目录查找/忽略某个目录
查看>>