Получите сообщение ViewDidUnload через UINavigationControllerDelegate - PullRequest
0 голосов
/ 31 октября 2011

DetailViewController <-> MasterViewController <-> ViewController

В настоящий момент я решаю свою проблему, указав переменную в классе ViewController, указывающую на DetailViewController, чтобы я мог выполнять метод при нажатии кнопки DONE в ViewController.

- (void)doneButtonPressed { 
       [self.detailViewController method];
}

Что я хочу сделать, так это иметь отчет ViewController для DetailViewController при его выгрузке, чтобы DetailViewController мог выполнять сам метод.

- (void)viewWillDisappear:(BOOL)animated {
      [super viewWillDisappear:animated];
      [[self.navigationController delegate] performSelector:@selector(method)];
}

То, что я попытался, это заставить MasterViewController установить делегат ViewControllers в DetailViewController с этим кодом, когда он выдвигается:

ViewController *ViewController = [[ViewController alloc] init];

ViewController.navigationController.delegate = self.detailViewController;

[self.navigationController pushViewController:ViewController animated:YES];

UINavigationControllerDelegate был установлен в DetailViewController.

Что я делаю не так?

1 Ответ

1 голос
/ 20 ноября 2011

Мой вопрос был плохо сформулирован.

Ответ есть в документации:

  • Руководство по программированию контроллера представления для iOS

    -> Контроллеры модального вида

    • Отклонение модального контроллера вида

http://developer.apple.com/library/ios/featuredarticles/ViewControllerPGforiPhoneOS/ModalViewControllers/ModalViewControllers.html#//apple_ref/doc/uid/TP40007457-CH111-SW14

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...