小编pra*_*oje的帖子

如何创建没有情节提要的ViewController并将一个设置为另一个的委托?

这是我设置委托的第一个VC:

class DiscoverVC: UIViewController, SetLocationDelegate {
    var name = ""
    let loc = LocationVC()
     override func viewDidLoad() {
        super.viewDidLoad()
        self.loc.delegate = self
     }

      func getLocation(loc: String) {
        self.name = loc
        self.tableView.reloadData()
    }
 }
Run Code Online (Sandbox Code Playgroud)

这是第二个视图控制器,我从那里通过委托获取数据:

protocol SetLocationDelegate: class {
    func getLocation(loc: String)
}

class LocationVC: UIViewController {

    weak var delegate: SetLocationDelegate?
    override func viewDidLoad() {
        super.viewDidLoad()
        self.delegate?.getLocation(loc: "Sam")
    }
}
Run Code Online (Sandbox Code Playgroud)

每当我尝试传递数据时,它都不会调用该方法,并且委托也不会被调用。急需帮助。

delegates uiviewcontroller programmatically-created swift

1
推荐指数
1
解决办法
2989
查看次数