I am using this func inside a UIViewController extension to add a title that adjusts font to fit width.
extesion UIViewController {
    func setTitleDifferentSizes(title: String){
        self.title = title
        guard let navigationBarHeight: CGFloat = 
self.navigationController?.navigationBar.frame.height else{
            return
        }
        let tlabel = UILabel(frame: CGRect(x: 0.0, y: 0.0, width: 
        200.0, height: navigationBarHeight))
        tlabel.text = self.title
        tlabel.textColor = UIColor.white
        tlabel.font = font24
        tlabel.backgroundColor = UIColor.clear
        tlabel.adjustsFontSizeToFitWidth = true
        self.navigationItem.titleView = tlabel
    }
}
I took this solution from this SO question and changed it a little bit: How to resize Title in a navigation bar dynamically
Now the issue I have is that the text of the title is not aligned vertically to the other navigation bar items, as you can see in the images, I show one where I just setup the title without using the above method, and the text there cannot fit but it is aligned properly, and the other image is using the method above where the text fits but it is not aligned.

