2014-11-08 5 views
0

Итак, я смотрю на код из Анализировать Anypic учебника here и мой вопрос заключается в следующем:родители-Child UIViewControllers IOS

Есть эти 2 вида контроллеры:

@interface PAPHomeViewController : PAPPhotoTimelineViewController 


@end 

and this one : 

@interface PAPPhotoTimelineViewController : PFQueryTableViewController <PAPPhotoHeaderViewDelegate> 

- (PAPPhotoHeaderView *)dequeueReusableSectionHeaderView; 

@end 

У меня есть SEGUE скажем, что открывается homeViewController.

Какая связь между этими двумя? Оба из viewcontrollers реализовали функцию viewDidLoad - и оба они вызваны. В каком порядке они называются? Кто-то из них имеет приоритет над другим? Я не понимаю идею диспетчера представлений, которая расширяет еще один диспетчер представлений.

Могу ли я, чтобы мой HomeViewController расширил UIViewController и PhotoTimeline для запуска внутри HomeViewController, учитывая конкретный кадр?

ответ

1

Предположительно PAPHomeViewController - это тот, который вы на самом деле создаете. Если это так, то его viewDidLoad вызывается, если он есть. Если PAPHomeViewController вызывает [super viewDidLoad] в своем представленииDidLoad, то в этой точке будет вызываться PAPPhotoTimelineViewController. В свою очередь, если PAPPhotoTimelineViewController звонит [super viewDidLoad], тогда будет вызываться PFQueryTableViewController s viewDidLoad.

Этот процесс будет продолжаться вплоть до UIViewController s viewDidLoad.

Вы спросили

Какова связь между этими двумя?

Я настоятельно рекомендую вам немного прекратить программирование и прочитать основные принципы программирования. Особенно прочитайте все, что вы можете найти в «наследовании реализации».

Смежные вопросы