2013-09-25 2 views
1

J'essaie de changer la couleur de mes icônes de barre d'onglets lorsque les onglets sont désélectionnés. À l'heure actuelle, la couleur est par défaut grise et je peux changer la couleur à la couleur que je veux pour quand il est sélectionné.UITabBar icône non sélectionnée tint

La bibliothèque de développement d'Apple a dit de changer le rendu de l'image en "original" au lieu de son "modèle" en mode par défaut. Je l'ai fait. alors il dit d'utiliser initWithTitle:image:selectedImage: J'ai essayé de faire ça aussi mais je pense que c'est là que j'ai foiré. J'ai écrit ceci dans mon fichier viewcontroller.m. Quel est le problème ici?

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

} 

Répondre

2

Le problème est que vous utilisez la même UIImage avec UIImageRenderingModeAlwaysOriginal dans les deux endroits.

Votre code devrait ressembler à

UIImage *stat = [UIImage imageNamed:@"white_stats.png"]; 
UIImage *statAlwaysOriginal = [stat imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]; 
self.tabBarItem = [[UITabBarItem alloc] initWithTitle:nil image:statAlwaysOriginal selectedImage:stat]; 

L'autre chose est qu'il ya des erreurs de syntaxe réelles dans votre message (dans l'initialisation UITabBarItem, mais je vous soupçonnez juste collé incorrectement.

+0

Oui disons que j'ai simplement "collé incorrectement" haha ​​Je suis actuellement assez inexpérimenté dans l'objectif C. Merci pour le bon code Dima.Mais l'image de mon icône de la barre d'onglets (white_stats.png) est toujours grise quand elle n'est pas sélectionnée. est blanc sur le fichier png Je pensais que ce code rendrait l'image en blanc Toutes les suggestions – ian

+0

Oh oups, je change ed les paramètres de l'image. Voir le code mis à jour. – Dima