1

J'ai un UITabBarController dans lequel le premier titre UITabBarItem n'est pas affiché. Je l'ai défini dans Interface Builder et j'ai essayé de le définir par programme, mais la zone de titre reste vide.Titre UITabBarItem non affiché

[[tabBarController.tabBar.items objectAtIndex:0] setTitle:@"Test1"]; 
[[tabBarController.tabBar.items objectAtIndex:1] setTitle:@"Test2"]; 

UITabController view

(Le point 2 est défini par Interface Builder, qui est où ce titre vient, juste pour vérifier que les titres de l'IB travaillent aussi bien - sauf pour le premier)

J'ai l'impression que c'est le résultat étrange d'ajouter UITabController au projet et de faire glisser la vue existante dans le premier endroit, mais je ne sais pas comment le réparer.

est ici le point de vue dans Interface Builder: enter image description here

Déplacement du ViewController qui est dans la première place à la deuxième place donne le résultat que vous attendez - la deuxième place devient vide et le premier se prépare avec " Test1 ", ce qui signifie que ce n'est pas drôle avec juste la première place.

Répondre

3

tapez [self setTitle:@"Title"] dans votre viewcontroller pour la première vue au lieu de le déclarer à travers le tableau viewcontrollers. Je ne sais pas ce qui est erroné bien, mais je devais le faire une fois

+0

Super! Cela a fonctionné - maintenant, comment puis-je définir l'image pour ce UITabBarItem? Son réglage dans la NIB n'est pas respecté non plus .. –

+0

trouver votre tabbar dans le uitabbarcontroller et mettre '[tabbaritem setImage: [UIImage imageNamed: @" imagename.png "]]' –

+0

Non, pas de chance - tout comme le titre, l'image est ignorée. Ce qui me fait penser que résoudre le problème initial pourrait devenir nécessaire. Darn –

3

Il suffit d'aller à votre méthode d'initialisation dans le fichier .m du contrôleur de votre vue et afin de définir l'utilisation du titre de la barre onglet élément:

[[self tabBarItem] setTitle:@"Main"]; 

et pour régler son image, utilisez:

[[self tabBarItem] setImage:[UIImage imageNamed:@"SomeFilename.png"]];