Multiline Navigationbar Title

后端 未结 3 790
不知归路
不知归路 2020-12-03 18:03

I am trying to set the title label in my navigation bar to allow multiple lines. I have custom navigation controller code that I am placing the multiline code into. I know t

3条回答
  •  暗喜
    暗喜 (楼主)
    2020-12-03 18:37

    Use this to get the label position exactly as you want it:

    let labelWidth = navBar.bounds.width - 110
    
        let label = UILabel(frame: CGRect(x:(navBar.bounds.width/2) - (labelWidth/2), y:0, width:labelWidth, height:navBar.bounds.height))
        label.backgroundColor = UIColor.clear
        label.numberOfLines = 0
        label.font = UIFont.boldSystemFont(ofSize: 13.0)
        label.textAlignment = .center
        label.textColor = UIColor.black
        label.lineBreakMode = .byWordWrapping
    
        label.text = loadedName
        navBar.topItem?.title = nil
        navBar.addSubview(label)
    

    the 110 value in the top line is the spacing you want either side of the label.

提交回复
热议问题