加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

在Swift中使用Container View进行委派

发布时间:2020-12-14 05:48:35 所属栏目:百科 来源:网络整理
导读:我正在为iPad Pro开发一款应用程序.在这个应用程序中,containerView用于添加其他视图并与它们进行交互. 首先,我创建了一个协议: protocol DataViewDelegate { func setTouch(touch: Bool)} 然后,我创建了我的第一个视图控制器 import UIKitclass ViewContro
我正在为iPad Pro开发一款应用程序.在这个应用程序中,containerView用于添加其他视图并与它们进行交互.

首先,我创建了一个协议:

protocol DataViewDelegate {
    func setTouch(touch: Bool)
}

然后,我创建了我的第一个视图控制器

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!"
        }
    }

}

最后,我创建了一个嵌入在containerView中的视图.

import UIKit

class ContainerViewController: UIViewController {

    var dataViewDelegate: DataViewDelegate?

    override func viewDidLoad() {
        super.viewDidLoad()
    }

    @IBAction func touchMe(sender: AnyObject) {
        dataViewDelegate?. setTouch(true)
    }

}

但由于某种原因,没有任何反应,第一个视图控制器在setTouch函数中什么都没有收到.

我的问题是:在这种情况下,使用容器,如何在两个ViewsControllers之间进行通信?

看起来你定义了委托,但没有设置委托.这种情况一直发生在我身上.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读