Swift委托调用致命错误

时间:2017-01-23 06:09:25

标签: swift delegates

我试图在Swift 3.0中调用委托函数。在调用时我收到的错误表明"致命错误:在打开一个Optional值"时意外地发现了nil。我已经完成了静态值,动态值没有用。

 protocol getServiceDelegate{
    func getService(_ ServiceTitle: String)

}

我以下列方式打电话给这位代表。

 self.delegate.getService("hello")

我在这做错了什么。我在下面设置代表。

func textServiceTapped(img: AnyObject)
{
    let storyboard = UIStoryboard(name: "Main", bundle: nil)
    let vc = storyboard.instantiateViewController(withIdentifier: "ProviderMoreDetailsVC") as! ProviderMoreDetailsViewController

    vc.delegate = self
    navigationController?.pushViewController(vc,
                                             animated: true)

}

func getService(_ ServiceTitle: String){
    textService.text = ServiceTitle

}

1 个答案:

答案 0 :(得分:0)

我使用以下代码解决了错误

var delegate: getServiceDelegate?
 sampleDelegateString = "hello"
 self.delegate?.getService(sampleDelegateString!)