我希望在整个应用程序中替换 UINavigationController 中的后退按钮。我的要求是这个后退按钮被定义在一个 XIB 中,如果可能的话,设置它的代码在一个地方。
我已经看到了将属性设置为 UIBarButtomItem 的各种方法self.navigationItem.backBarButtonItem
,并在其视图中使用自定义按钮,例如[[UIBarButtonItem alloc] initWithCustomView:myButton];
我的第一个想法是创建一个全局类别(不确定这是否是术语,我是 Objective-C 的新手,您可能已经猜到了)为我的所有 UINavigationController 实现“ViewDidLoad”,并设置此属性。我的问题是将 XIB 加载到我在运行时创建的这个按钮。
有没有人建议以一种简洁的方式做到这一点(我想这一定是一件很常见的事情,我无法想象在我的所有屏幕上重复代码)。我考虑过创建一个UINavigationController
子类,但是我不确定这会如何影响我的 ViewDidLoad 自定义实现。
非常感谢任何建议。我还需要定位 >= iOS4(外观 API 仅适用于 iOS5)。