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文件上的图标图像为白色。我以为此代码会将图像呈现为白色。有什么建议吗?哦,糟糕,我切换了图像参数。请参阅更新的代码。