0

J'ai actuellement mes contrôleurs de navigation définis dans mon appDelegate comme suit (code résumé):Définition d'un titre navigationBar

- (void) applicationDidFinishLaunching { 
tabBarController = [[UITabBarController alloc] init]; 

    FlagList *flagList = [[FlagList alloc] initWithApiCall:API_PUBLICTIMELINE andTitle:@"Home"]; 

    UITabBarItem *homeTab = [[UITabBarItem alloc] initWithTitle:@"Home" 
                  image:[UIImage imageNamed:@"home.png"] 
                  tag:0]; 
    flagList.tabBarItem=homeTab; 
    [homeTab release]; 

    tabBarController.viewControllers=[NSArray arrayWithObjects:flagList,nil]; 
    [flagList release]; 


    [rootViewController release]; 
    rootViewController = [[UINavigationController alloc] initWithRootViewController:[tabBarController autorelease]]; 
    rootViewController.navigationBar.barStyle=UIBarStyleDefault; 
} 

Je veux définir un titre dans la navigationBar de mon FlagListView. Cependant, je veux être capable de le faire dans la méthode -viewDidLoad de ma classe FlagList UITableViewController. Comment puis-je accéder à cette propriété?

J'ai essayé:

[[self navigationItem] setTitle:@"Home"]; 

..mais il ne semble pas fonctionner. Quelqu'un peut-il me dire ce que je fais de mal?

Répondre

1

En supposant FlagList est un descendant si ViewController utiliser [self setTitle:@"Home"] au lieu de [[self navigationItem] setTitle:@"Home"];

+0

..Je viens de l'essayer. Ça n'a pas l'air de marcher. – unicornherder

+0

et FlagList est un descendant de UITableViewController – unicornherder

+0

cela semble fonctionner, mais pas de garantie c'est la bonne façon de procéder: ((RFAppDelegate *) [UIApplication sharedApplication] .delegate) .tabBarController.navigationItem.title = @ "Home"; – unicornherder

0

[auto setTitle: @ "Home"];

Cela devrait fonctionner.

Questions connexes