iOS8 UITabBar图标变蓝色

来源:互联网 发布:mac子弹头真假 编辑:程序博客网 时间:2024/04/29 23:19

        最近将Xcode的Base SDK升级到iOS8.0以后,发现使用的系统级的UITabBar,图标在selected状态都变成蓝色,很郁闷。
        查找资料后发现UITabBarItem.h里面说的很清楚,
        /* 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");
        UIImageRenderingModeAlwaysOriginal( 始终绘制图片原始状态)是关键,即需要对图片多做一次小小的处理,即

 //构造TabBarItem:title-标题、image-图片、selectedImage-选中时图片        - (UITabBarItem *)itemWithTitle:(NSString *)title image:(UIImage *)image selectedImage:(UIImage *)selectedImage        {                //始终绘制图片原始状态                image = [image imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];                selectedImage = [selectedImage imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];                UITabBarItem *tabBarItem = [[UITabBarItemalloc]initWithTitle:titleimage:imageselectedImage:selectedImage];                return tabBarItem;        }
        这样,在构建TabBarItem时,直接调用这个方法就可以了。

0 0
原创粉丝点击