【发布时间】:2015-11-05 16:41:52
【问题描述】:
抱歉,我无法很好地解释自己。我对编程真的很陌生,委托的话题仍然让我难以理解。以前我有过一些很棒的help,但现在我尝试在不同的情况下使用委托,但我做错了。我拼凑了一些不起作用的代码,无论我搜索多少,我都找不到修复它的方法。
我在容器视图中有一个视图控制器 (MainController) 和嵌入式视图控制器 (EmbeddedController)。我试图让嵌入式控制器中的一个按钮操纵容器视图(containerView)。
嵌入式控制器:
protocol ControllerDelegate {
func hideContainerView()
}
class EmbeddedController: UIViewController {
var delegate: VControllerDelegate?
@IBAction func button(sender: AnyObject) {
delegate?.hideContainerView()
}
}
主控制器:
class MainController: UIViewController, ControllerDelegate {
@IBOutlet var containerView: UIView!
func hideContainerView() {
containerView.hidden = true
}
override func viewDidLoad() {
super.viewDidLoad()
var vc = EmbeddedController()
vc.delegate = self
}
}
有人知道我做错了什么吗?为什么这不起作用?
【问题讨论】:
标签: swift delegates uicontainerview