我在我的代码中创建了以下方法:
func SignIn(objDictionary:Dictionary<String,String>)
{
//Body of method
}
我需要将以下字典作为参数传递给此方法,该方法定义如下:
let objSignInDictionary:Dictionary = ["email":emailTextField.text, "password":passwordTextField.text]
如何在上述方法中将此字典作为参数传递?
应该注意的是,方法在另一个类中,我通过创建其对象来调用该方法,如下所示:
let obj = Services()
SignIn在Services.swift类中定义 所以我试着把它称为
obj.SignIn(objSignInDictionary)
但得到以下错误
"String!" is not identical to "String"
我错了,如何修复。我几天都被困在这里。
答案 0 :(得分:12)
如果你在Xcode中点击objSignInDictionary
,你会看到它被推断为[String : String!]
。您可以通过明确设置objSignInDictionary
类型:
let objSignInDictionary:[String:String] = ["email":emailTextField.text, "password":passwordTextField.text]