0
votes

In my iPhone project, I have a navigation view controller. In each view that is loaded by this controller, I am setting buttons in the UINavigationBar that are doing different things for each view.

However, I want to have the .rightBarButtonItem do exactly the same thing each time (namely, pop up a UIActionSheet). How can I centralize this code and not have to put it in every view controller?

I tried subclassing UINavigationController and setting the .rightBarButtonItem in this subclass' viewDidLoad. However, no button is displayed then. (But when I put the same code in a view controller loaded by the navigation controller, the button is displayed and works fine).

The code I am using to set the rightBarButtonItem is:

self.navigationItem.rightBarButtonItem = ...
1

1 Answers

3
votes

Subclass all the UIViewControllers that are pushed onto that UINavigationController and add the same viewDidLoad code.