如何将我的视图控制器设置为自己的委托?

时间:2017-07-17 07:56:05

标签: ios swift

如果需要登录,我有'helper'单例类需要弹出登录。我想从登录视图控制器捕获返回,所以我在LoginViewController中实现了一个协议,并且需要在singleton类中设置我的委托,但是当我尝试这样做时:

loginController.delegate = self

Xcode尝试将其更正为:

loginController.delegate = self as! LoginViewControllerDelegate

我的LoginViewController.swift文件中的协议:

protocol LoginViewControllerDelegate {
    func loginViewControllerDidReturn(identifier: String)
}

有什么想法吗?

2 个答案:

答案 0 :(得分:3)

确保您的LoginViewController定义为:

class LoginViewController: UIViewController, LoginViewControllerDelegate {
...
}

这告诉编译器您的类实现了协议。

您还可以制作实施协议的扩展程序:

extension LoginViewController: LoginViewControllerDelegate {
    // Implement here the func of your protocol
}

答案 1 :(得分:1)

'self'是否符合LoginViewControllerDelegate协议?