La couleur de l'image UITabBarItem est grisée tandis que l'image originale est blanche

J'utilise le code suivant pour créer une image pour mon UITabBarItem

 self.tabBarItem.image = [UIImage imageNamed:@"tab_img.png"]; 

Ce tab_img.png se compose de couleur noire, blanche et claire. Mais dans l'application toute la partie de l'image qui est en noir et blanc devient gris. Comment je peux changer ce gris en blanc?

c'est l'image que j'utilise

entrez la description de l'image ici

Dans iOS7, si vous utilisez IB, vous pouvez sous-classr UITabBarController puis append ceci:

 + (void)initialize { //the color for the text for unselected tabs [UITabBarItem.appearance setTitleTextAtsortingbutes:@{NSForegroundColorAtsortingbuteName : [UIColor redColor]} forState:UIControlStateNormal]; //the color for selected icon [[UITabBar appearance] setSelectedImageTintColor:[UIColor whiteColor]]; } - (void)viewDidLoad { [super viewDidLoad]; if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) { for (UITabBarItem *tbi in self.tabBar.items) { tbi.image = [tbi.image imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]; } } } 

Si vous créez les éléments manuellement, vous devez définir UIImageRenderingModeAlwaysOriginal sur chaque icône et append le code à partir de l'initialisation.

Définir l'image sélectionnée et non sélectionnée.

 [self.tabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"mehr_icon"] withFinishedUnselectedImage:[UIImage imageNamed:@"mehr_icon"]]; 

les images pour UITabBarItems devraient être canal alpha seulement! la partie opaque apparaîtra grise (bleue si elle est sélectionnée) seulement!

jetez un oeil à: http://devinsheaven.com/creating-uitabbar-uitoolbar-icons-in-adobe-illustrator/

Si vous utilisez des éléments d'image, définissez simplement le champ "Rendu sous" de vos images (images sélectionnées et non sélectionnées) sur "Image originale" ( exemple )

Ensuite, dans votre xib, définissez les champs "Image" et "Image sélectionnée" dans votre élément de barre d'tabs ( exemple )

J'ai eu le même problème une fois, j'utilise des images avec du blanc et alpha seulement comme cette image

Je l'ai mis avec self.tabBarItem.image = [UIImage imageNamed:@"Liste"];

Only Way est d'aller à IB (constructor de l'interface) et select le UITabBarItem dans votre View Controller et allez à "inspecteur de files" défiler vers le bas et vous verrez Global Tint elle vous pouvez le définir à aucune couleur ou la couleur que vous voulez prendre effet pour l'image sélectionnée.

selon le code suivant est préoccupation

 setFinishedSelectedImage: withFinishedUnselectedImage:; 

ce n'est plus disponible dans iOS 7 plutôt que nous pouvons utiliser

 [yourCustomTabBarItem setSelectedImage:---]; 

mais cela prendra également effet de cette couleur de teinte globale.