I have a custom UINavigationController subclass, one that uses an equivalent UINavigationItem subclass containing an additional two stored properties. The UINavigationController subclass displays additional UI elements in its root view depending on the value of these two new properties.
However, while I can specify the UIViewControllers to use this UINavigationItem subclass in a XIB/Storyboard, I work on a team that has a very strong "no XIB/Storyboard" policy. As such, I'm trying to find a way to specify that my programmatic UIViewControllers should use this custom subclass for their navigationItems, but navigationItem is a get-only property.
Without using XIBs/Storyboards, is there a way I can force this particular cluster of UIViewControllers to utlize this custom UINavigationItem subclass?
(DISCLAIMER: I would strongly prefer NOT to fall back on associated objects or thread locals, if possible.)