J'ai découvert un comportement étrange dans mon application, où un connecté IBOutleta son cadre de vue connecté entre les appels dans mon contrôleur de vue à viewWillAppear:et viewDidAppear:. Voici le code pertinent dans ma UIViewControllersous - classe:
-(void)viewWillAppear:(BOOL)animated {
NSLog(@"%@", self.scrollView);
}
-(void)viewDidAppear:(BOOL)animated {
NSLog(@"%@", self.scrollView);
}
et la sortie de journal résultante:
MyApp[61880:c07] <UIScrollView: 0x1057eff0; frame = (0 0; 0 0); clipsToBounds = YES; autoresize = TM+BM; gestureRecognizers = <NSArray: 0x10580100>; layer = <CALayer: 0x1057f210>; contentOffset: {0, 0}>
MyApp[61880:c07] <UIScrollView: 0x1057eff0; frame = (0 44; 320 416); clipsToBounds = YES; autoresize = TM+BM; gestureRecognizers = <NSArray: 0x10580100>; layer = <CALayer: 0x1057f210>; contentOffset: {0, 0}>
Ce qui montre clairement que la trame change entre les deux appels. Je voulais faire la configuration avec la vue dans la viewDidLoadméthode, mais si le contenu n'est pas disponible pour moi de changer jusqu'à ce qu'il soit à l'écran, cela semble assez inutile. Que pourrait-il se passer?