C'est drôle, j'ai un problème similaire. J'ai supprimé toutes les vues du fichier xib et ré-ajouté une vue. Définissez la barre d'état sur "non spécifié" afin que la barre d'état ne soit pas prise en charge. La vue, une fois ajoutée, est créée avec x = 0, y = 0, w = 320 h = 460 au lieu de (0,0,320,480) comme je l'aurais prévu. Après avoir changé la hauteur à 480 et connecté au propriétaire du fichier et changé la couleur pour la rendre distinctive par rapport à l'arrière-plan. Je pense qu'il y avait une bande blanche entre le haut de l'écran et la vue. J'ai augmenté mon code avec:
#define RECTLOG (rect) (NSLog (@ "" #rect @ "x:% fy:% fw:% fh:% f", rect.origin.x, rect.origin.y, rect.size.width, rect .size.height));
dans viewDidLoad
- (void) viewDidLoad {
[super viewDidLoad];
RECTLOG (self.view.frame);
}
Il s'avère que la vue est telle qu'elle est chargée à partir d'IB est en fait (0, 20, 320, 480) Pour contourner le problème, j'ai réinitialisé le cadre de la vue avec self.view.frame = CGRectMake (0, 0, 320, 480);
J'utilise IB 3.2.5
J'adorerais connaître une petite solution pour celui-ci.