导航栏标题被截断

时间:2016-04-07 20:12:34

标签: swift2 uinavigationbar xcode7

我有一个导航栏标题,如果太长则会被截断 - 基于以下代码,如何修复问题以便标题在运行时显示在2行?

    override func viewDidLoad() {
        super.viewDidLoad()

    title = checklist.name

    self.navigationController?.navigationBar.titleTextAttributes = [NSFontAttributeName: UIFont(name: "CollegiateHeavyOutline", size: 23.0)!,
        NSForegroundColorAttributeName: UIColor.init(red: 25.0/255.0, green: 25.0/255.0, blue: 112.0/255.0, alpha: 1.0)]

}

下面的屏幕截图显示了文字大小为17的标题(使用2行 - 很棒!) enter image description here

但是以下情况并不是那么好,标题应该是'但是这个标题是18号及以上的标题 enter image description here

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

你在找什么?

override func viewDidLoad() {
    super.viewDidLoad()

    let titleLabel = UILabel()
    titleLabel.backgroundColor = UIColor.clearColor()
    titleLabel.numberOfLines = 2
    titleLabel.font = UIFont(name: "CollegiateHeavyOutline", size: 23.0)
    titleLabel.textColor = UIColor(red: 25.0/255.0, green: 25.0/255.0, blue: 112.0/255.0, alpha: 1.0)
    titleLabel.textAlignment = .Center
    titleLabel.text = checklist.name
    titleLabel.sizeToFit()
    navigationItem.titleView = titleLabel
}