Delegar usando o Container View no Swift
Estou desenvolvendo um aplicativo para iPad Pro. Neste aplicativo,containerView
use para adicionar maisviews
e interagir com eles.
Primeiro, eu criei um protocolo:
protocol DataViewDelegate {
func setTouch(touch: Bool)
}
Então, criei meu primeiro controlador de exibição
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!"
}
}
}
E, finalmente, criei uma exibição que será incorporada no containerView.
import UIKit
class ContainerViewController: UIViewController {
var dataViewDelegate: DataViewDelegate?
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func touchMe(sender: AnyObject) {
dataViewDelegate?. setTouch(true)
}
}
Mas, por alguma razão, nada aconteceu, o primeiro controlador de exibição não recebe nada na função setTouch.
Minha pergunta é:Nesse caso, usando contêiner, como posso fazer a comunicação entre dois ViewsControllers?