0

我试图弄清楚如何更改所选标签栏图标的笔划。它通常是青色,就像所选图标的色调。我已经改变了所选图标的色调和指示图像,如下所示:self.tabBarController.tabBar.selectedImageTintColor = [UIColor grayColor]; self.tabBarController.tabBar.selectionIndicatorImage = [UIImage imageNamed:@"selectedTab.png"];

但现在我仍然在图标周围有这个青色笔触

图片

有谁知道代码,因为我找不到

4

2 回答 2

3

我以前也注意到了这一点。我最终只是手动设置了选定和未选定的图像,而不是让它为我渲染颜色。

然后,您可以使用 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;
}

您必须为标签栏上的每个视图控制器执行此操作。

于 2012-06-16T12:47:59.770 回答
1

试试这段代码,把它放在 viewDidLoad 中:

for (UITabBarItem * barItem in theTabBar.items) {
    UIImage * image = barItem.image;
    [barItem setFinishedSelectedImage:image withFinishedUnselectedImage:image];
}
于 2012-12-17T21:55:53.253 回答