Je me demande si cela peut être réalisé en utilisant Storyboard IB:
self.navigationItem.leftBarButtonItems = @[barButton1, barButton2]
EDITED:
Le but est de préserver les avantages de l'utilisation du storyboard et, s'il est possible, sans utiliser de lignes de code.
EDIT # 2:
Sur la base de cette réponse , j'ai expérimenté et constaté qu'il était possible de lier la propriété Title View de l'élément de navigation à une barre d'outils
mais cela me ressemble à un bidouille (et je pourrais aussi vouloir conserver le titre):
Une meilleure idée?
Il existe un moyen d'ajouter une vue à navigationItem. Que d’ajouter des boutons ou des étiquettes dont vous avez besoin à la vue.
Peut utiliser le code ci-dessous:
UIBarButtonItem *btnShare = [[UIBarButtonItem alloc] initWithCustomView:self.backbtn];
UIBarButtonItem *btnRefresh = [[UIBarButtonItem alloc] initWithCustomView:self.testbutton2];
[self.navigationItem setLeftBarButtonItems:[NSArray arrayWithObjects:btnShare,btnRefresh, nil]];
1 -> Bouton glisser-déposer L'élément dans la barre de navigation et dans le dernier xcode, vous pouvez directement placer plus d'un élément dans la barre de navigation, à gauche ou à droite.
Si vous voulez les ajouter à partir du code, dans Swift vous pouvez faire:
override func viewDidLoad() {
// ....
let ubRefresh = UIBarButtonItem.init(barButtonSystemItem: .Refresh, target: self, action: "refreshManually")
let ubMyIcon = UIBarButtonItem(image: UIImage(named: "MyIcon"), style: .Plain, target: self, action: "myAction")
self.navigationItem.setRightBarButtonItems([ubMyIcon, ubRefresh], animated: true)
}
Je vous suggère d'ajouter plusieurs boutons sur la barre d'outils. L'ajout de plusieurs boutons dans la barre de navigation n'est pas une bonne idée. si vous voulez ajouter plusieurs boutons sur la barre d’outils en utilisant le storyboard. Ce lien vidéo peut vous aider à créer une barre d’outils avec plusieurs boutons https://www.youtube.com/watch?v=4nYM8EfTpRw
Vous pouvez créer une UIToolbar
contenant tous vos boutons:
UIToolbar *toolbar = [[UIToolbar alloc] init];
// ... set toolbars' frame, initialize buttons, etc;
[toolbar setItems:@[barButton1, barButton2] animated:NO];
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:toolbar];
Ou vous pouvez utiliser setLeftBarButtonItems:animated:
et setRightBarButtonItems:animated:
J'espère que ça aide, bonne chance!
Vous pouvez créer vos boutons dans le storyboard, les éditer ou les styler à votre guise, puis créer leurs points de vente et les ajouter en tant qu’objets de niveau supérieur, puis les ajouter au moment de l’exécution à viewDidLoad en utilisant [navigationItem setLeftBarButtonItems:] et [navigationItem setRightBarButtonItems: ... Espérons que Aide :)