iOS - UINavigationController adding multiple right items?
Solution 1
I am sure I read in the developer reference that additional buttons in the navigation bar is frowned upon. I cannot find that passage now. I have not done it myself, but found this link that seems to outline exactly what you need to do: (http://www.mattdipasquale.com/blog/2010/11/02/how-to-add-multiple-uibarbuttonitems-to-uinavigationbar/)
Have you considered using the toolbar property of the navigation controller?
Solution 2
As of iOS5 you can assign an array of bar button items to the navigation item's rightBarButtonItems
(note the plural) property.
Solution 3
I used JRTurtons answer in Xcode 4.5, iOS 6 and implemented it like this and it works:
// Two buttons at the right side of nav bar
UIBarButtonItem *addAttachButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(addAttachmentClicked:)];
UIBarButtonItem *sendButton = [[UIBarButtonItem alloc] initWithTitle:LS(@"Send") style:UIBarButtonItemStyleBordered target:self action:@selector(sendClicked:)];
self.navigationItem.rightBarButtonItems = @[addAttachButton,sendButton];
However, I should mention, that UIBarButtonSystemItemPageCurl doesn't work like that.
Solution 4
adding any design to the navigation controller in XCode is easy.
add a UIView to your scene add the buttons you need to the UIView then drag and drop the UIView to the right space in the navigationController
Solution 5
In Xcode 7.1 (perhaps even earlier), you can add multiple items to the right or left side of a UINavigationBar just by dragging them in. If you drag to just the right spot, you get a little vertical bar that indicates where that item will be inserted.
aryaxt
Updated on October 29, 2020Comments
-
aryaxt over 3 years
I have a
UINavigationController
. I'm trying to add multiple buttons on the right side of my navigationBar. How can I achieve this? What kind of button does it take?UIBarButton
orUINavigationItem
?