我想要巧妙地设置UINavigationController中“后退”按钮的所有title
属性,以便我不必在任何地方执行self.navigationController.navigationBar.backButtonItem.title = "Back"
或将子类别UINavigationController
设置为无处不在,所以我创建了这个扩展:在UINavigationController中设置所有后退按钮标题
extension UINavigationItem {
open var backBarButtonItem: UIBarButtonItem? {
get {
return self.backBarButtonItem
}
set {
newValue?.title = "Back"
backBarButtonItem = newValue?
}
}
}
但它说'backBarButtonItem' used within its own type
。
以前有没有人做过这件事,或者可以想办法让它工作?
这是因为我想尝试覆盖已经存在的backBarButtonItem,并在设置之前更改标题 - 这是不可能在扩展?只在一个子类中? –
@ChrisByatt您无法用扩展名覆盖现有功能,更新了我的答案。 – Rajat