有人能解释一下为什么会这样吗?
我有一个ViewController A
和ViewController B
,其中A
做push()
,而B
在最上面。
在A
内部,我创建了以下代码:
private lazy var backBarButton: UIBarButtonItem = {
let button = UIBarButtonItem(image: UIImage(named: "back"), style: .plain, target: nil, action: nil)
button.tintColor = .white
return button
}()
这给了我疯狂的输出:)就像默认的iOS箭头+我的挨着。
至少它没有“ Back”标题,这也是我需要的东西:)
当我将代码更改为类似的内容时:
private lazy var backBarButton: UIBarButtonItem = {
let button = UIBarButtonItem(title: "", style: .plain, target: nil, action: nil)
button.tintColor = .white
return button
}()
我有箭头(并且可以修改它的色调),没有title
,但它与我的自定义图片不同。
为什么我的自定义图像根本不能代替系统库存?
答案 0 :(得分:0)
您可以通过以下代码设置自定义后退导航按钮:
private lazy var backBarButton: UIBarButtonItem = {
let button = UIBarButtonItem(image: UIImage(named: "back"), style: .plain, target: nil, action: nil)
button.tintColor = .white
return button
}()
self.navigationController?.navigationItem.hidesBackButton = true
self.navigationItem.backBarButtonItem = backBarButton
答案 1 :(得分:0)
首先,我将使用隐藏默认的后退按钮
self.navigationController?.navigationItem.hidesBackButton = true
然后我可以继续在左侧项目上添加新的自定义后退按钮
self.navigationItem.leftBarButtonItem = UIBarButtonItem(image: UIImage(named: "back"), style: .plain, target: nil, action: nil)