【问题标题】:navigation bar button not showing in swift 3swift 3中未显示导航栏按钮
【发布时间】:2016-10-26 15:33:39
【问题描述】:

我们使用的是 xcode 8.0 。我们正面临自定义导航栏按钮项目的问题。自定义栏按钮未显示在导航中。

let button = UIButton.init(type: .custom)
        button.titleLabel?.text = "dsfjksdf"
        button.titleLabel?.textColor = UIColor.black;
        button.addTarget(self, action:#selector(GigDatesViewController.btnNext), for: UIControlEvents.touchUpInside)
        button.frame = CGRect.init(x: 0, y: 0, width: 30, height: 30)
        let barButton = UIBarButtonItem.init(customView: button)

        navigationItem.leftBarButtonItem = barButton

【问题讨论】:

  • 检查是否有navigationItem。
  • 您在问题中发布的代码在哪里?它在视图控制器类的viewDidLoad 中吗?视图控制器是否嵌入在导航控制器中?
  • 我们正在使用 xib,我在 viewDidLoad 中尝试过,viewWillAppear both
  • 再一次,您的视图控制器是在导航控制器中吗?是还是不是?
  • 我在应用委托中编写此代码用于导航

标签: ios swift swift3


【解决方案1】:

我确实尝试了您的代码,但我得到 barButton.title 为 nil 或为空,因此您可以为按钮设置图像,例如:

button.setImage(UIImage(named: "image_name"), for: .normal)

现在您可以在 leftBarButtonItem 看到图像。

如果您想在 leftBarButtonItem 中使用自定义文本,您可以使用:

let barButton = UIBarButtonItem(title: "dsfjksdf", style: .plain, target: self, action: #selector(GigDatesViewController.btnNext))
navigationItem.leftBarButtonItem = barButton

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-18
    • 1970-01-01
    • 2019-01-11
    • 1970-01-01
    • 1970-01-01
    • 2018-03-08
    相关资源
    最近更新 更多