J'ai conçu une vue avec une barre d'outils qui apparaît de manière modale dans Interface Builder. J'ai un UIBarButtonItem qui est sur le côté gauche, que je voudrais apparaître sur le côté droit de la barre d'outils. Comment puis-je faire cela dans IB, ou via le code?Comment placer UIBarButtonItem sur le côté droit d'un UIToolbar?
26
A
Répondre
57
Voici comment faire dans le code si quelqu'un vient sur ce poste:
UIBarButtonItem *leftButton = [[[UIBarButtonItem alloc] initWithTitle:@"Item" style:UIBarButtonItemStyleBordered target:self action:@selector(btnItem1Pressed:)] autorelease];
UIBarButtonItem *flex = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil] autorelease];
UIBarButtonItem *rightButton = [[[UIBarButtonItem alloc] initWithTitle:@"Item" style:UIBarButtonItemStyleBordered target:self action:@selector(btnItem2Pressed:)] autorelease];
self.toolbarItems = [NSArray arrayWithObjects: leftButton, flex, rightButton, nil];
29
Insérez un élément dont l'identificateur est "espace flexible".
-1
Si vous pouvez vous contenter de ce ne pas être un UIBarButtonItem (par exemple, un bouton d'information), ce que je fais est de changer la couche du bouton pour être toujours en face de la barre d'outils. De cette façon, lorsque je fais glisser le bouton sur IB dans la barre d'outils, il ne l'aspire pas automatiquement sur le côté gauche.
8
Swift Code:
func addDoneButton() -> UIToolbar {
let toolbar = UIToolbar()
let flexButton = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.FlexibleSpace, target: nil, action: nil)
let doneButton = UIBarButtonItem(title: "Done", style: .Plain, target: self, action: Selector("donePressed"))
toolbar.setItems([flexButton, doneButton], animated: true)
toolbar.sizeToFit()
return toolbar
}
27
- un élément dans le droit comme celui-ci
UIBarButtonItem *flexible = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
UIBarButtonItem *item1 = [[UIBarButtonItem alloc] initWithTitle:@"item1” style:UIBarButtonItemStylePlain target:self action:nil];
self.toolbarItems = [NSArray arrayWithObjects: flexible, item1, nil];
-Deux articles gauche et à droite comme ce
UIBarButtonItem *flexible = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
UIBarButtonItem *item1 = [[UIBarButtonItem alloc] initWithTitle:@"item1” style:UIBarButtonItemStylePlain target:self action:nil];
UIBarButtonItem *item2 = [[UIBarButtonItem alloc] initWithTitle:@"item2” style:UIBarButtonItemStylePlain target:self action:nil];
self.toolbarItems = [NSArray arrayWithObjects: item1, flexible, item2, nil];
articles -trois comme celui-ci
UIBarButtonItem *flexible = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
UIBarButtonItem *item1 = [[UIBarButtonItem alloc] initWithTitle:@"item1” style:UIBarButtonItemStylePlain target:self action:nil];
UIBarButtonItem *item2 = [[UIBarButtonItem alloc] initWithTitle:@"item2” style:UIBarButtonItemStylePlain target:self action:nil];
UIBarButtonItem *item3 = [[UIBarButtonItem alloc] initWithTitle:@"item3” style:UIBarButtonItemStylePlain target:self action:nil];
self.toolbarItems = [NSArray arrayWithObjects: item1, flexible, item2, flexible, item3, nil];
-quatre articles comme celui-ci
UIBarButtonItem *flexible = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
UIBarButtonItem *item1 = [[UIBarButtonItem alloc] initWithTitle:@"item1” style:UIBarButtonItemStylePlain target:self action:nil];
UIBarButtonItem *item2 = [[UIBarButtonItem alloc] initWithTitle:@"item2” style:UIBarButtonItemStylePlain target:self action:nil];
UIBarButtonItem *item3 = [[UIBarButtonItem alloc] initWithTitle:@"item3” style:UIBarButtonItemStylePlain target:self action:nil];
UIBarButtonItem *item4 = [[UIBarButtonItem alloc] initWithTitle:@"item4” style:UIBarButtonItemStylePlain target:self action:nil];
self.toolbarItems = [NSArray arrayWithObjects: item1, flexible, item2, item3, flexible, item4, nil];
donc quand vous voulez ajouter un espace vous devez ajouter le bouton de la barre flexible.
0
3.x Swift ou au-dessus:
internal var textFieldHandlerToolBar: UIToolbar = {
let tb = UIToolbar.init(frame: CGRect.init(origin: .zero, size: CGSize.init(width: UIScreen.screenSize().width, height: 44.0)))
let flexibleButton = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.flexibleSpace, target: nil, action: nil)
let doneBarButton = UIBarButtonItem.init(title: "Done", style: UIBarButtonItemStyle.done, target: self, action: #selector(actionDonePickerSelection))
tb.setItems([flexibleButton, doneBarButton], animated: false)
return tb
}()
Sortie:
Questions connexes
- 1. UIToolbar UIBarButtonItem Alignement question
- 2. UIBarbuttonItem n'est pas dans le côté droit de la barre d'outils?
- 3. iphone sdk 4.2: Les UIBarButtonItem sont égarés sur UIToolbar
- 4. IPhone UIToolBar UiBarButtonItem Problème de transition
- 5. ajouter l'image à UIBarButtonItem pour UIToolbar
- 6. Comment ancrer un expandeur sur le côté droit d'un ListBox?
- 7. Comment ajouter plus d'un bouton sur le côté droit de la barre de navigation dans l'objectif.c
- 8. comment placer le bloc flowplayer/fenêtre pour la vidéo en jouant sur le côté droit de la page
- 9. UINavigationBar sous-vue se cache le droit UIBarButtonItem
- 10. android option RadioButton sur le côté droit du texte
- 11. Faites défiler si sur le côté droit (jQuery)
- 12. Aligner une image sur le côté droit d'un div
- 13. WebView montrant barre blanche sur le côté droit
- 14. Comment prédéfinir des valeurs sur le côté droit d'un élément Shuttle dans Oracle APEX?
- 15. Comment remplir le côté droit d'une liste de sélection richfaces?
- 16. Comment pousser les éléments du côté droit vers le haut
- 17. Comment ajuster le cadre ou l'alignement vertical d'un UIBarButtonItem contenu par une instance UIToolbar?
- 18. Comment ajouter uitoolbar à uitableviewcontroller?
- 19. Comment déplacer ou créer une fenêtre sur le côté droit sur Vimscript?
- 20. UIToolBar - désactiver les boutons
- 21. Comment changer la couleur de UIBarButtonItem?
- 22. Comment ouvrir le plug-in Taglist de Vim sur le côté droit de la fenêtre?
- 23. UIToolbar dans l'iPad
- 24. Transparent UIToolBar sur UIWebView
- 25. Est-il possible de mettre un bouton au centre sur un UIToolBar sur iPhone?
- 26. UIBarButtonItem image avec le bouton "création"
- 27. comment afficher l'image sur le côté droit de vue de table pour iphone
- 28. Comment ouvrir les nouvelles étiquettes de l'onglet doc sur le côté droit dans Visual Studio?
- 29. Comment repositionner un élément HTML dynamique sur le côté droit d'une fenêtre de navigateur?
- 30. Comment mettre un X sur le côté droit d'un bloc <a>?
Cela ressemble à une meilleure solution que la mienne! – bpapa
Fonctionne comme un charme! Excellente solution –
Lorsque je fais cela, le bouton n'apparaît pas sur l'écran. –