我以前也注意到了这一点。我最终只是手动设置了选定和未选定的图像,而不是让它为我渲染颜色。
然后,您可以使用 Photoshop 或您最喜欢的图像编辑软件为每个选项卡设计两个图像。选择选项卡时,一个图像将是选项卡图标,而未选择选项卡时,另一图像将用于选项卡。您将需要自己在 Photoshop 中应用淡色。
将所有图像导入 Xcode 后,您可以在所需的 UITabBarItem 上设置它们。我通常在我的视图控制器初始化函数中设置这些。
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
[self.tabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"my-selected-icon"] withFinishedUnselectedImage:[UIImage imageNamed:@"my-deselected-icon"]];
}
return self;
}
您必须为标签栏上的每个视图控制器执行此操作。