导航栏按钮未显示在导航栏中

时间:2019-04-17 12:17:20

标签: ios swift uinavigationbar uibarbuttonitem

我以编程方式在rightBarButton上设置了navigationBar,但是标题没有问题,但没有显示。

这是我的代码格式AppDelegate

    UINavigationBar.appearance().barTintColor        = APP_COLOR
    UINavigationBar.appearance().tintColor           = UIColor.white
    UINavigationBar.appearance().titleTextAttributes = [NSAttributedString.Key.font:Constants.APP_REGULAR_FONT_WITH_SIZE(size: 18), NSAttributedString.Key.foregroundColor : UIColor.white]

这是我试图添加viewController的{​​{1}}中的代码。

rightBarButton

我也曾尝试删除外观设置,但该按钮仍然不可见。

enter image description here

3 个答案:

答案 0 :(得分:0)

您可以在代码中删除self.navigationController?.

override func viewDidLoad() {
    super.viewDidLoad()

    navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: .action, target: self, action: #selector(logoutButtonTapped))
}

答案 1 :(得分:0)

不要使用 self.navigationController?.navi ... ,而不要使用 self.navigationItem.rightBarButton ...

override func viewDidLoad()
{
    super.viewDidLoad()

    let rightBarButton = UIBarButtonItem(image: UIImage(named: "logout"), style: .plain, target: self, action: #selector(logoutButtonTapped))
    self.navigationItem.rightBarButtonItem = rightBarButton
}

希望您的问题将通过此代码解决。谢谢。

答案 2 :(得分:0)

     let rightBarButton = UIBarButtonItem(image: UIImage(named: "test"), style: .plain, target: self, action: #selector(logoutButtonTapped))

    self.navigationController?.navigationBar.topItem?.rightBarButtonItem = rightBarButton

现在这对我有用