我有一个导航 Controller ,我想覆盖它的默认后退箭头图像和文本。基本上,而不是 < Back
,我想隐藏那个小<
箭头,只显示Back
文本。我已经能够用另一个图像替换后退箭头,所以我想我只需尝试用图像替换它,然后将图像设置为与背景颜色匹配。我怎样才能做到这一点?
在 AppDelegate.swift 中我有这个:
extension UINavigationItem{
override open func awakeFromNib() {
super.awakeFromNib()
let backItem = UIBarButtonItem()
backItem.title = ""
backItem.image = UIImage(named: "icons8_burger")
self.backBarButtonItem = backItem
}
}
在单击按钮时发送到的 Controller 的 viewDidLoad() 中,我有以下内容:
override func viewDidLoad() {
super.viewDidLoad()
let burger = UIImage(named: "icons8_burger")
navigationController?.navigationBar.backIndicatorImage = burger
navigationController?.navigationBar.backIndicatorTransitionMaskImage = burger
}
那么,我有什么想法可以实现这一点吗?到目前为止我还没有找到我要找的东西。
任何建议表示赞赏!
最佳答案
如果你这样做,
navigationController?.navigationBar.backIndicatorImage = nil
navigationController?.navigationBar.backIndicatorTransitionMaskImage = nil
或
navigationController?.navigationBar.backIndicatorImage = UIImage(named: "")
navigationController?.navigationBar.backIndicatorTransitionMaskImage = UIImage(named: "")
然后默认 iOS 使用 <
作为默认图像。
要删除此图像,您需要添加空白透明图像。我使用了 here 中的示例谷歌图像引用是 here
现在将图像像素大小减小到 (1,1)
并添加您的 Assets 并使用以下代码。
navigationController?.navigationBar.backIndicatorImage = UIImage(named: "Blank")
navigationController?.navigationBar.backIndicatorTransitionMaskImage = UIImage(named: "Blank")
此处空白与我的资源中的图像名称相同。
关于ios - 如何隐藏导航栏后退按钮中的后退箭头?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57353204/