2010-09-22 7 views
0

Après this tutorial et this question, j'ai tenté de créer un UIViewController personnalisé contenant un UINavigationController. Cela a surtout fonctionné, sauf que le contrôleur prend le plein écran et que la barre d'état le recouvre. En téléchargeant la source du tutoriel et en l'exécutant, j'ai trouvé que le tutoriel avait le même problème (il utilise un UITableViewController). D'autres expériences ont révélé que cela fonctionne si le contenu du contrôleur personnalisé est un UILabelView à la place.UIViewControllers en couches chevauche la barre d'état

alt text

+0

PS. Je suis conscient que les contrôleurs de navigation supportent bien la gestion des barres d'outils, mais ce n'est pas le but de cette question – Casebash

Répondre

3

Une solution possible est de changer la fonction loadView du UIViewController pour définir le cadre de la vue à l'aide: [[UIScreen mainScreen] applicationFrame] au lieu de contentView.frame. Je ne suis pas sûr si c'est la meilleure solution et comment cela va interagir si vous essayez de mettre le contrôleur de vue personnalisé sous un autre contrôleur de vue.

Idéalement, on me donnerait la taille que j'ai à dessiner dans la méthode loadView. Malheureusement, on ne nous le donne pas. Voir this question pour plus d'informations.