首先,我创建了一个协议:
protocol DataVIEwDelegate { func settouch(touch: Bool)}
然后,我创建了我的第一个视图控制器
import UIKitclass 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!" } }
}
最后,我创建了一个嵌入在containerVIEw中的视图.
import UIKitclass ContainerVIEwController: UIVIEwController { var dataVIEwDelegate: DataVIEwDelegate? overrIDe func vIEwDIDLoad() { super.vIEwDIDLoad() } @IBAction func touchMe(sender: AnyObject) { dataVIEwDelegate?. settouch(true) }
}
但由于某种原因,没有任何反应,第一个视图控制器在settouch函数中什么都没有收到.
我的问题是:在这种情况下,使用容器,如何在两个VIEwsControllers之间进行通信?
看起来你定义了委托,但没有设置委托.这种情况一直发生在我身上. 总结以上是内存溢出为你收集整理的在Swift中使用Container View进行委派全部内容,希望文章能够帮你解决在Swift中使用Container View进行委派所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)