Objective c UITabBar未选择的图标色调

Objective c UITabBar未选择的图标色调,objective-c,ios7,Objective C,Ios7,我试图在未选中选项卡时更改选项卡栏图标的颜色。现在的颜色是默认的灰色,我可以改变颜色为任何颜色,我想当它被选中 苹果的开发库说要将图像渲染改为“原始”,而不是默认模式“模板”。然后它说使用initWithTitle:image:selectedImage:我也试过这么做,但我想这就是我搞砸的地方。我在我的viewcontroller.m文件中写了这个。这里怎么了 - (void)viewDidLoad { [super viewDidLoad]; // Do any addit

我试图在未选中选项卡时更改选项卡栏图标的颜色。现在的颜色是默认的灰色,我可以改变颜色为任何颜色,我想当它被选中

苹果的开发库说要将图像渲染改为“原始”,而不是默认模式“模板”。然后它说使用
initWithTitle:image:selectedImage:
我也试过这么做,但我想这就是我搞砸的地方。我在我的viewcontroller.m文件中写了这个。这里怎么了

- (void)viewDidLoad
{
    [super viewDidLoad];

    // Do any additional setup after loading the view, typically from a nib.
    UIImage *stat = [UIImage imageNamed:@"white_stats.png"];
    stat = [stat imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];

    (instancetype)initWithTitle:(NSString *)nil image:(UIImage *)stat selectedImage:(UIImage *)stat;

}

问题在于,您在这两个位置都使用了相同的
UIImage
uiimagerrenderingmodealways或original

您的代码应该类似于

 UIImage *stat = [UIImage imageNamed:@"white_stats.png"];
 UIImage *statAlwaysOriginal = [stat imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
 self.tabBarItem = [[UITabBarItem alloc] initWithTitle:nil image:statAlwaysOriginal selectedImage:stat];

另一件事是,您的帖子中存在一些实际语法错误(在UItabaritem初始化中,但我怀疑您只是粘贴了错误的内容。

是的,让我们假设我只是“粘贴了错误的内容”哈哈。我实际上对objective c缺乏经验。感谢正确的代码Dima。但是,我的选项卡栏图标图像(white_stats.png)未选中时仍为灰色。png文件上的图标图像为白色。我以为此代码会将图像呈现为白色。有什么建议吗?哦,糟糕,我切换了图像参数。请参阅更新的代码。