以编程方式添加UIBarButtonItem

时间:2019-12-25 21:06:29

标签: swift uinavigationcontroller uibarbuttonitem swift5 swift5.1

我正在尝试以编程方式添加UIBarButtonItem。

(cdr '(2))

并且还为测试提供了选择器功能。

()

不幸的是,这不起作用-模拟器中导航栏上的条形按钮不可见。

经断点检查后,rightBarButtonItem存在。

可能是由应用协调器而不是子VC创建条形按钮引起的。

请任何人帮助解决此问题? Simulator screenshot

2 个答案:

答案 0 :(得分:0)

该问题是由创建条形按钮而不是从子VC而是协调器引起的。

条形按钮存储在navigationItem的{​​{1}}属性中。

答案 1 :(得分:0)

您正在将UIBarButtonItem添加到NavigationController的新实例。因此它不会出现在这里。

因此,您要在视图控制器中使用以下方法之一处理右导航栏:  override func viewDidLoad() 要么  override func viewWillAppear

添加:

let rightBarButton = UIBarButtonItem(title: "LogIn", style: .plain, target: self, action: #selector(logInPressed))

self.navigationController?.navigationItem.setRightBarButton(rightBarButton, animated: true)
相关问题