从容器视图控制器调用主视图控制器
Call main view controller from container view controller
我有一个容器视图控制器,它有自己的视图控制器 class 和一些 UI 组件。这个容器视图控制器的一些事件需要调用主视图控制器。我找不到如何操作。
class mainViewController :UIViewController {
var containerView:UIView!
}
class MyContainerView:UIViewController {
@IBAction func buttonClick(sender:UIButton){
// change mainViewController background for example
}
}
所以您正在尝试使父控制器正确?
self.parentViewController
您应该注册您的主视图控制器以收听从您的容器视图控制器广播的本地通知,以了解它何时需要执行某些更新功能或更改 UI。
在你的主要是
NSNotificationCenter.defaultCenter().addObserver(self, selector: "performUpdates:", name: "ContainerViewChangedUpdate", object: nil)
确保在 viewWillDisappear
中注销。
在您的容器视图控制器中,您将发送通知。
我有一个容器视图控制器,它有自己的视图控制器 class 和一些 UI 组件。这个容器视图控制器的一些事件需要调用主视图控制器。我找不到如何操作。
class mainViewController :UIViewController {
var containerView:UIView!
}
class MyContainerView:UIViewController {
@IBAction func buttonClick(sender:UIButton){
// change mainViewController background for example
}
}
所以您正在尝试使父控制器正确?
self.parentViewController
您应该注册您的主视图控制器以收听从您的容器视图控制器广播的本地通知,以了解它何时需要执行某些更新功能或更改 UI。
在你的主要是
NSNotificationCenter.defaultCenter().addObserver(self, selector: "performUpdates:", name: "ContainerViewChangedUpdate", object: nil)
确保在 viewWillDisappear
中注销。
在您的容器视图控制器中,您将发送通知。