Methods 如何将字典作为参数传递给Swift中的方法?
我在代码中创建了以下方法:Methods 如何将字典作为参数传递给Swift中的方法?,methods,parameters,swift,alamofire,Methods,Parameters,Swift,Alamofire,我在代码中创建了以下方法: func SignIn(objDictionary:Dictionary<String,String>) { //Body of method } 如何在上述方法中将此字典作为参数传递 需要注意的是,该方法位于另一个类中,我通过创建其对象来调用该方法,如下所示: let obj = Services() SignIn在Services.swift类中定义 所以我试着把它叫做 obj.SignIn(objSignInDictionary) 但
func SignIn(objDictionary:Dictionary<String,String>)
{
//Body of method
}
如何在上述方法中将此字典作为参数传递
需要注意的是,该方法位于另一个类中,我通过创建其对象来调用该方法,如下所示:
let obj = Services()
SignIn在Services.swift类中定义
所以我试着把它叫做
obj.SignIn(objSignInDictionary)
但是得到下面的错误
"String!" is not identical to "String"
我错在哪里以及如何纠正。我已经在这里呆了几天了。如果在Xcode中按住alt键并单击
objSignInDictionary
,您将看到其推断为[String:String!]
。您可以通过显式设置objSignInDictionary
类型来解决此问题:
let objSignInDictionary:[String:String] = ["email":emailTextField.text, "password":passwordTextField.text]
let objSignInDictionary:[String:String] = ["email":emailTextField.text, "password":passwordTextField.text]