2017-09-22 1 views
-1

Je crée une application pour iOS 11 ou plus tard, l'exigence de définir le grand titre sur le côté gauche de la barre de navigation.Comment définir un grand titre sur la barre de navigation pour iOS 11?

S'il vous plaît quelqu'un d'aide pour trier comment configurer et il devrait fonctionner uniquement pour iOS 11 ou version ultérieure. Donnez-moi d'autres suggestions pour maintenir cette fonctionnalité disponible à travers l'application (qui supporte iOS 8 ou plus tard).

Merci d'avance.

+0

https://stackoverflow.com/a/46198535/5461400 –

Répondre

1

Voici un extrait de code pour afficher un grand titre sur le côté gauche de la barre de navigation pour iOS 11 ou version ultérieure.

Objectif C:

self.title = @"Your title"; 
    if (@available(iOS 11, *)) { 
     self.navigationController.navigationBar.prefersLargeTitles = true; 
     self.navigationController.navigationItem.largeTitleDisplayMode = UINavigationItemLargeTitleDisplayModeAlways; 
    } 

Swift:

 self.title = "Your title" 
     if #available(iOS 11, *) { 
      self.navigationController?.navigationBar.prefersLargeTitles = true 
      self.navigationController?.navigationItem.largeTitleDisplayMode = .always 
     } 

Vous devez mettre vérifier l'état pour iOS 11 avant l'application du bâtiment.

Obligation de tester un grand titre:

  • Xcode 9.0,
  • Mac OSX - 10.12.6 ou plus tard,
  • iPhone/iPad ou Xcode 9 simulateur avec iOS 11.
0
if (@available(iOS 11.0, *)) { 
    [[UINavigationBar appearance] setPrefersLargeTitles:false]; 
} 
+1

Si pas être défini sur true? – EDUsta

0

Vous pouvez définir UILabel en titleView.

UILabel *lblTitle = [[UILabel alloc] init]; 
lblTitle.text = YOUR_TITLE_TEXT; 
lblTitle.backgroundColor = [UIColor clearColor]; 
lblTitle.textColor = [UIColor whiteColor]; 
lblTitle.font = FONT_NAV_BAR; 
[lblTitle sizeToFit]; 
self.navigationItem.titleView = lblTitle;