3

navigationItem.titleXcode 9 beta 编译器为和显示以下错误self.navigationController?.navigationBar.topItem?.title

模糊使用“标题”

这是我的代码:

self.title = BMLocalized("Select Number of Passengers")
navigationItem.title = navigationTitleString // here showing error
submitButton.setTitle(submitButtonTitle, for: .normal)

错误截图

任何人都可以帮助解决这个问题吗?

4

3 回答 3

2

现在,您也可以使用以下代码,而不是修改源代码:

navigationItem.titleLabel.text = "foo"
于 2017-08-18T05:58:51.830 回答
1

更新:

只需使用以下代码:

navigationItem.titleLabel.text = "text"

旧答案:

发生这种情况是因为您使用了扩展 UINavigationItem 类并重新实现属性title的第三方库。所以,这个库与 UIKit 冲突。

解决方案:

只需使用

title

代替

navigationItem.title

或者删除第三方库中 UINavigationItem 类的扩展。您可以在问题导航器中看到此库的名称:

错误

对于 MATERIAL 解决方案是:

从 Material -> Core -> NavigationItem.swift 中删除这些行:

public var title: String? {
    get {
        return titleLabel.text
    }
    set(value) {
        titleLabel.text = value
        navigationItem.reload()
    }
}
于 2017-06-09T10:07:54.133 回答
0

只需使用,

self.title = "title_name"

而不是两者,如果你同时使用两者,那么它将相互替换。

于 2017-06-09T09:53:16.730 回答