我有一个带有快速字典作为内部变量的类。
class OAuth: NSObject {
public var oauthParameters:[String:String]
public var SignatureSecret:String
public var accessToken:String? = nil
public var tokenSecret: String? = nil
public init(consumerKey:String, consumerSecret:String, accessToken:String?, tokensecret:String?){
self.oauthParameters = ["oauth_signature_method" : "SHA1"]
if accessToken{
self.oauthParameters.updateValue(accessToken!, forKey: "oauth_token")
}
if tokensecret{
self.SignatureSecret = "\(consumerSecret)&\(tokensecret!)"
}
else {
self.SignatureSecret = "\(consumerSecret)&"
}
}
}
我想在传递的参数的函数中分配字典的某些键,但是问题是该变量oauthParameters
不保留作为文字传递的值:(
编辑:我猜字典没有初始化,因为LLDB将我打印出一个空字典(Xcode6B4),因此println确认一切正常。
看来您的初始化程序尚未完成。出于某种原因,游乐场没有给我一个实际的错误,但是您需要self.SignatureSecret
在退出前提供一个值init()
:
public init(consumerKey:String, consumerSecret:String, accessToken:String?, tokensecret:String?)
{
self.oauthParameters = ["oauth_signature_method" : "SHA1"]
self.SignatureSecret = String()
}
解决之后,我可以在中看到值self.oauthParameters
:
println(o.oauthParameters["oauth_signature_method"]!)
// prints "SHA1"
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句