iOS 7 Personnalisé UINavigationBar TitleView se déplace lorsque l'on Pousse ou Popping nouveau-Vue-Contrôleur

Je suis en utilisant un titre personnalisé pour un UINavigationBar avec le code suivant:

//Set a label to the nav bar
THLabel *titleLabel = [[THLabel alloc] init];
titleLabel.text = @"Test";
titleLabel.font = [UIFont fontWithName:APP_FONT size:22.0];
titleLabel.frame = CGRectMake(0, 0, 100, 30);
titleLabel.textAlignment = NSTextAlignmentCenter;
titleLabel.textColor = CUSTOM_LIGHT_BLUE;
titleLabel.strokeColor = kStrokeColor;
titleLabel.strokeSize = kStrokeSize;
self.navigationItem.titleView = titleLabel;

Le problème est que lors de la présentation d'un nouveau viewcontroller et puis de revenir à l'affichage d'origine contrôleur de cette coutume en vue des quarts et puis re-centres de lui-même. Veuillez voir la vidéo pour une démonstration.

Veuillez voir la vidéo ici:
https://www.youtube.com/watch?v=961CCVQmpJM&feature=youtu.être

J'ai désactivé d'un redimensionnement automatique de tous les sous-vue pour la manette de navigation avec à la fois le storyboard et dans le code pour chaque vue-contrôleur:

    //Set the navigation bar hidded on the log in view
    UINavigationController* mainViewController = (UINavigationController*)self.appDelegate.window.rootViewController;
    [mainViewController setNavigationBarHidden:YES];
    [[mainViewController navigationBar] setAutoresizesSubviews:NO];

Cependant encore il redimensionne! Comment puis-je arrêter ce - que je fais mal? Merci!

  • Où est-ce que titleView code assis? Avez-vous essayé de le déplacer vers viewDidLoad ou init?
  • J'ai essayé cette partie du code (puisque je n'ai pas THLabel classe) dans mon application et que tout fonctionne comme prévu, aucune étrange mouvement de la vue titre: UILabel *titleLabel = [[UILabel alloc] init]; titleLabel.text = @"Test"; titleLabel.font = [UIFont fontWithName:@"Bakersville" taille:22.0]; titleLabel.frame = CGRectMake(0, 0, 100, 30); titleLabel.textAlignment = NSTextAlignmentCenter; auto.navigationItem.titleView = titleLabel; Pourriez-vous fournir le code de THLabel classe donc je voudrais vérifier si je vois quelque chose de mal là?
  • Merci pour votre commentaire, Barbara. Ici, c'est le dépôt Github où THLabel est hébergé: github.com/MuscleRumble/THLabel
  • J'ai changé tous mes THLabels à UILabels et il a encore ce problème.
InformationsquelleAutor PhilBot | 2014-05-03