我有一个页面视图控制器,其中包含两个导航控制器,它们都是嵌入视图控制器的。
是否可以将数据直接从视图控制器传递到页面视图控制器。我想使用委派模式,但是我认为那应该先委派给导航控制器,然后再委派给页面视图控制器。有人知道一个不太复杂的解决方案吗?
谢谢!
答案 0 :(得分:0)
我认为在此处使用协议不是明智的选择,因为您跳得太深了,无法使用通知吗?
您认为应调用委托函数的
NotificationCenter.default.post(name: Notification.Name("yourNotification"), object: your object)
然后在您的pageViewController viewDidLoad中:
NotificationCenter.default.addObserver(self, selector: #selector(yourFuncName), name: NSNotification.Name("yourNotification"), object: nil)
答案 1 :(得分:0)
在“ PageViewController”的viewDidLoad中,添加
- (void)viewDidLoad {
[super viewDidLoad];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(FooBar) name:@"FooBar" object:nil];
}
- (void) FooBar {
NSLog(@"Foo");
};
然后从“ ViewController”中调用
[[NSNotificationCenter defaultCenter] postNotificationName:@"FooBar" object:nil];