Скажем, у меня есть контроллер представления пользовательского контейнера (MainViewController), где я сделать что-то вроде этого:Контейнер View контроллеры - уведомлять родителей действий
- (void)viewDidLoad
{
[super viewDidLoad];
HomeViewController *homeVC = [[HomeViewController alloc] initWithNibName:@"HomeViewController" bundle:nil];
[self addChildViewController:homeVC];
[self.view addSubview:homeVC.view];
}
HomeViewController будет иметь кнопку, например, «идти», что при нажатии необходимо перейти к следующему контроллеру. Поэтому мне нужно уведомить MainViewController этого действия. Каков наилучший способ сделать это?
Я использую пользовательский контейнер, потому что мне нужно выполнить пользовательские переходы между контроллерами представления. Когда нажата кнопка «go», некоторые из видов на HomeViewController будут анимироваться, пока вид из нового контроллера просмотра не станет на месте.
Очевидно, что я мог бы дать HomeViewController свойство типа MainViewController и сделать вызовы таким образом, но я надеюсь, что есть более чистый путь с API-интерфейсом контроллера контейнера.
нормально, так что нет ничего, что я могу использовать из Содержания API UIViewController? – soleil
Не совсем уверен, что это сообщение может помочь [проверить это] (http://stackoverflow.com/questions/8379759/how-does-view-controller-containment-work-in-ios-5) –
Я бы добавил +1 это 3 раза, если бы я мог. Мало того, что он отвечал на один и тот же вопрос для меня, но он развил мое понимание блоков в десять раз :) – Pedro