Quelqu'un sait pourquoi, si je pousse/localSearchViewController pop, je reçois une erreur de EXC_BAD_ACCESS après comme 5 push/popPush/Pop View Controller EXC_BAD_ACCESS
if (localSearchViewController == nil)
localSearchViewController = [[LocalSearchViewController alloc] init];
CBAAppAppDelegate *app = (CBAAppAppDelegate *) [[UIApplication sharedApplication] delegate];
[app.navBarController.navigationBar setHidden:YES];
[app.navBarController pushViewController: localSearchViewController
animated:YES];
Tant qu'il possède une plume nommée LocalSearchView.xib ou (je pense) LocalSearchViewController.xib, alors init devrait fonctionner correctement. –
D'après les docs d'Apple: "L'initialiseur désigné est la méthode dans chaque classe qui garantit l'initialisation des variables d'instance héritées (en envoyant un message à super pour exécuter une méthode héritée.) C'est aussi la méthode qui fait le plus de travail. que d'autres méthodes d'initialisation dans la même classe appellent ". Il est donc bien d'appeler init tant qu'il contient un appel à [super] sur l'initialiseur désigné à l'intérieur. Cela garantit que la classe est initialisée comme elle devait l'être, car nous ne savons pas si la superclasse effectue un autre travail lorsque cette méthode est appelée. – Rog
J'ai résolu ce problème, en appelant super classe, [super viewDidLayoutSubviews]; –