I am developing an application for iPad Pro. In this application, use containerView to add additional views and interact with them.
First I created a protocol:
protocol DataViewDelegate { func setTouch(touch: Bool) }
Then I created my first view controller

import UIKit class ViewController: UIViewController, DataViewDelegate { @IBOutlet var container: UIView! @IBOutlet var labelText: UILabel! override func viewDidLoad() { super.viewDidLoad() } func setTouch(touch: Bool) { if touch == true { labelText.text = "Touch!" } }
}
And finally, I created a view that will be embedded in the View container.

import UIKit class ContainerViewController: UIViewController { var dataViewDelegate: DataViewDelegate? override func viewDidLoad() { super.viewDidLoad() } @IBAction func touchMe(sender: AnyObject) { dataViewDelegate?. setTouch(true) }
}
But for some reason, nothing happened, the first view controller does not receive anything in the setTouch function.
My question is: In this case, using a container, how can I make a connection between two ViewsControllers?
James
source share