0

選択したタブバー アイコンのストロークを変更する方法を見つけようとしました。通常は、選択したアイコンの色合いのようなシアンです。選択したアイコンの色合いとインジケーター画像を次のように変更しました。self.tabBarController.tabBar.selectedImageTintColor = [UIColor grayColor]; self.tabBarController.tabBar.selectionIndicatorImage = [UIImage imageNamed:@"selectedTab.png"];

しかし、今でもアイコンの周りにこのシアンのストロークがあります

画像

見つけられなかったので、そのコードを知っている人はいますか?

4

2 に答える 2

3

私も以前にこれに気づきました。色をレンダリングするのではなく、選択した画像と選択していない画像を手動で設定することになりました。

次に、Photoshopまたはお気に入りの画像編集ソフトウェアを使用して、タブごとに2つの画像をデザインできます。一方の画像は、タブが選択されている場合はタブアイコンになり、もう一方の画像は、タブが選択されていない場合のタブになります。Photoshopで自分で色合いを適用することをお勧めします。

すべての画像をXcodeにインポートしたら、目的のUITabBarItemに設定できます。私は通常、これらをViewControllersのinit関数内で設定します。

- (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;
}

タブバーにあるすべてのViewControllerに対してこれを行う必要があります。

于 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 に答える