2017-09-27 10 views
4

Je suis en train d'utiliser le nouveau grand système de titres dans iOS 11 en utilisant Swift. Lorsque le titre devient trop long (voir l'exemple de l'image), il ajoute ... au lieu de couper ou de réduire la taille du texte. Comment puis-je ajouter un saut de ligne?Comment faire une pause dans un long titre dans iOS 11?

Example image with long title

Voici une partie du code que je utilise pour mettre en place le titre:

self.navigationController?.navigationBar.prefersLargeTitles = true 
self.navigationController?.navigationBar.largeTitleTextAttributes = [NSForegroundColorAttributeName: MyGlobalVariable.themeMainColor] 
self.navigationController?.navigationBar.largeTitleTextAttributes = [NSFontAttributeName: UIFont.systemFont(ofSize: 22)] 
navigationItem.title = "Search by Name" 
+0

Je suis assez sûr qu'une seule ligne est autorisée à être dans le titre. Je n'ai pas vu de titre à deux lignes. – CoderFrom94

+0

De tout ce que j'ai lu jusqu'à présent, vous avez peut-être raison. Je pense que je dois aborder mon problème sous un angle différent. Merci! – Coltuxumab

+0

Cool, je l'ai confirmé hier que seul un LIKE est possible dans le titre. Désolé de ne pas l'avoir mis à jour. J'ai rattrapé le travail. :) – CoderFrom94

Répondre

1

Essayez ceci:

for navItem in (self.navigationController?.navigationBar.subviews)! { 
    for itemSubView in navItem.subviews { 
     if let largeLabel = itemSubView as? UILabel { 
      largeLabel.text = self.title 
      largeLabel.numberOfLines = 0 
      largeLabel.lineBreakMode = .byWordWrapping 
     } 
    } 
} 

Il a travaillé pour moi.

enter image description here