2011-02-18 4 views
1

Comment un bouton peut-il être ajouté à une barre d'outils de navigation dans une application basée sur la navigation?Ajouter un bouton à une barre d'outils de navigation

Le rootController est une tableView par défaut, et c'est parfait. Je voudrais ajouter un bouton «partage» au contrôleur de navigation afin que je puisse l'attacher à ma propre méthode. Comment cela se fait-il si la barre de navigation est ajoutée quelque part dans le code?

Répondre

4

Pour le faire dans le code, allez à votre point de vue méthode viewDidLoad et créer un UIBarButtonItem

Ce code va créer un bouton qui indique la part que vous vouliez et le mettre sur le côté droit de la barre de navigation.

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    UIBarButtonItem *shareButton = [[UIBarButtonItem alloc] initWithTitle:@"Share"  style:UIBarButtonItemStyleBordered target:self action:@selector(share)]; 

    self.navigationItem.rightBarButtonItem = shareButton; 
    [shareButton release]; 
} 
+0

Devrait-il être libéré immédiatement? – jarryd

+0

Vous pouvez le libérer dès qu'il a été affecté à un objet navigationItems leftBarButtonItem ou rightBarButtonItem. Si vous deviez le libérer avant qu'il ne soit assigné à l'élément de navigation. – Convolution

1
UIBarButtonItem *shareButton = [[[UIBarButtonItem alloc] initWithTitle:@"Share" style:UIBarButtonItemStylePlain target:self action:@selector(yourShareAction)] autorelease]; 


self.navigationItem.rightBarButtonItem = shareButton; 
0

Cela fait un bouton d'ajout, mais vous avez l'idée.

self.navigationItem.rightBarButtonItem = [[[UIBarButtonItem alloc] 
    initWithBarButtonSystemItem:UIBarButtonSystemItemAdd 
    target: 
    self action:@selector(buttonPressed:)] 
    autorelease]; 
0

Vous pouvez créer un UIBarButtonItem et l'attacher à l'élément de navigation d'un contrôleur de vue racine. Vous ajoutez une paire cible-action lorsque vous initialisez l'objet UIBarButtonItem et ce message d'action sera envoyé à la cible sur un utilisateur en appuyant sur le bouton. Par conséquent, si vous souhaitez utiliser le bouton lorsque la vue de la table est affichée, définissez UIBarButtonItem sur la propriété navigationItem.rightBarButtomItem de votre contrôleur de vue de table.

Questions connexes