Je suis en train de tester l'événement viewDidLoad sur l'un de mes UIViewController.UnitTests et iOs: viewDidLoad déclenché deux fois
- (void)testMyView
{
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
MyViewController *vc = [storyboard instantiateViewControllerWithIdentifier:MYID];
[vc viewDidLoad];
STAssertNotNil(vc, @"MyViewController should not be nil");
}
Si je supprime la ligne [vc viewDidLoad];
, le viewDidLoad
est jamais déclenché. Si je laisse [vc viewDidLoad];
en place, viewDidLoad
est déclenché deux fois.
Je comprends que les vues sont chargées paresseusement, mais comment puis-je éviter ce comportement?
Existe-t-il une meilleure pratique concernant les tests View?
utilisation viewDidAppear au lieu de viewDidLoad ... – lakesh
vous devez appeler la méthode '-loadView' au lieu du' -viewDidLoad' ... et il a gagné » t être invoqué deux fois. – holex
Eh bien, c'était mon premier essai mais ça ne marche pas. 'vc.view.hidden = NO;' a fait l'affaire. –