swift - 带有两个 UIBarButtons 的 NavigationBar 标题

标签 swift uinavigationcontroller uibarbuttonitem

我正在尝试设置 UINavigationBar 的标题。如果我不添加 UIBarButtons,我可以看到标题,如果我添加它们,我不能。我两个都想看

var cancelBarButtonItem = UIBarButtonItem(
    title: "Cancel".localized,
    style: .plain,
    target: self,
    action: #selector(cancelButtonTouched(sender:))
)
var doneBarButtonItem = UIBarButtonItem(
    title: "Done",
    style: .plain,
    target: self,
    action: #selector(doneButtonTouched(sender:))
)

override func viewDidLoad() {
    super.viewDidLoad()

    setupRightNavBarButtons()
    self.navigationController?.navigationBar.topItem?.title = "Title"
}

func setupRightNavBarButtons(){
    self.doneBarButtonItem.isEnabled = false

    navigationItem.leftBarButtonItem = cancelBarButtonItem
    navigationItem.rightBarButtonItem = doneBarButtonItem
}

最佳答案

View Controller 为导航栏设置自己的正确方法是设置自己的 navigationItem

改变:

self.navigationController?.navigationBar.topItem?.title = "Title"

到:

self.title = "Title" // sets the navigationItem title

或:

navigationItem.title = "Title"

关于swift - 带有两个 UIBarButtons 的 NavigationBar 标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42979018/

相关文章:

ios - 在添加的 CocoaPods 项目中找不到一些导入

iphone - 以编程方式更改(而不是初始化)UIBarButtonItem 标识符?

ios - 更改 UIBarButtonItem 标题看起来很糟糕

ios - 选中或突出显示时全局更改 UIBarButtonItem 文本颜色

swift - 为什么我会在 Swift "Could not find member subscript"中收到此错误

arrays - 更改文本颜色时的 Swift 4 数组问题

ios - TableViewController 中的 SearchBar

ios - 如何设置右侧导航栏按钮标题

ios - 在 UISplitView 中选择导航后 DetailView 消失

ios - 使用 UINavigationController 弹出到上一个 View Controller 时屏幕下方有线黑色空间