方法 – 如何在Swift中的方法中将字典作为参数传递?

前端之家收集整理的这篇文章主要介绍了方法 – 如何在Swift中的方法中将字典作为参数传递?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在我的代码中创建了以下方法
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"

我错在哪里以及如何解决.我几天都被困在这里.

如果你在Xcode中点击objSignInDictionary,你会看到它被推断为[String:String!].您可以通过显式设置objSignInDictionary类型来解决此问题:
let objSignInDictionary:[String:String] = ["email":emailTextField.text,"password":passwordTextField.text]

猜你在找的Swift相关文章