Я пытаюсь реализовать метод совместного использования, который позволит обмениваться данными между родительским контроллером представления и дочерним контроллером представления. В Objective-C я мог бы сделать это так:
@implementation UIViewController(MyParentViewController)
- (MyParentViewController*)containerController
{
UIViewController *parent = self;
Class parentClass = [MyParentViewController class];
while ( nil != (parent = [parent parentViewController]) && ![parent isKindOfClass:parentClass] ) {}
return (id)parent;
}
@end
Это позволяет дочернему контроллеру представления создать экземпляр своего родительского контроллера представления, просто добавив MyParentViewController *containerController = self.containerController;
Итак, вопрос в том, как реализовать нечто подобное в Swift 4? Заранее спасибо!