【发布时间】:2016-01-13 17:32:54
【问题描述】:
我想更改我 iOS 应用程序中所有视图上的 BackBarButtonItem,以便它们只显示没有文字的后退箭头。
实现这一点的唯一方法是遍历每个 UIViewController 并设置 self.navigationItem.backBarButtonItem.title 吗?似乎我应该能够创建一个超类来定义backBarButtonItem.title 的默认值,但我不知道从哪里开始。
感谢您的帮助。
【问题讨论】:
-
你试过 UIViewController 上的分类了吗?
-
我想如果我做一个类别,我会将该类别#import 到每个导航控制器中,对吗?我目前正在研究 Swizzling。
-
不,你不需要#import它。
-
你能告诉我更多关于这方面的信息吗?我将如何实现它以影响所有
BackBarButtonItems,而不必在每次应用程序创建新的后退按钮时调用我的类别方法? -
如果您在 UIViewController 上创建一个类别并在其中覆盖
backBarButtonItem,那么只要调用它们的后退栏按钮项,就会调用您的方法。如果你想调用超类方法,你只需要 swizzle。
标签: ios objective-c uiviewcontroller uinavigationitem backbarbuttonitem