Je veux faire des choses d'enregistrement lorsque l'utilisateur appuie sur le bouton de retour sur un contrôleur de navigation. Est-ce possible uniquement en implémentantComment effectuer une action lorsque le contrôleur de navigation affiche une vue sur l'iPhone?
- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated
{
int index = [[self.navigationController.viewControllers] indexOfObject:[self.navigationController.visibleViewController]];
if(viewController == [[self.navigationController.viewControllers] objectAtIndex:index-1])
//saving code here
alors le délégué est appelé lorsqu'il est sur le point d'afficher le contrôleur de vue précédent. Y a-t-il une manière plus élégante de savoir quand le contrôleur de vue sera sauté?
et je ne peux pas utiliser viewWillDisappear car il y a un bouton qui affiche un UIImagePickerController, et je ne veux pas que l'enregistrement soit fait ensuite. Des pensées?
vous écrivez le code quand un contrôleur de vue get a sauté, pour que vous puissiez y faire votre épargne. Et ce qui n'est pas élégant à propos de l'utilisation des délégués? – thelaws
Eh bien, je veux dire que c'est la seule façon que je peux voir pour le faire, mais il semble que ce soit une chose courante de devoir faire quelque chose quand quelque chose se déclenche, donc j'ai supposé qu'il y avait une autre façon de le faire. Il n'y a rien d'élégant dans le code ci-dessus, il semble juste comme un "tricheur" moyen de faire le travail. c'est peut-être juste moi. – marty
effectivement la méthode ci-dessus ne fonctionne même pas. Donc, le problème subsiste. – marty