我不知道如何在swift中从NSCFDictionary转换值。 我有以下错误:
无法将'__NSCFDictionary'类型的值(0x193baa5d8)转换为'PFUser'(0x100811780)
任何帮助都非常感激。
问候。
CODE:
func logUserData()
{
let graphRequest = FBSDKGraphRequest(graphPath: "me", parameters: nil)
graphRequest.startWithCompletionHandler { (connection, user, error) -> Void in
if error != nil
{
print(error)
}
else
{
print("fetched user: \(user)")
let fbAccessToken1 = FBSDKAccessToken.currentAccessToken()
print("fbAccessToken1: \(fbAccessToken1)")
//correct?
PFFacebookUtils.linkUserInBackground(self.currentUser!, withAccessToken: fbAccessToken1) {
(succeeded: Bool, error: NSError?) -> Void in
if (succeeded != false) {
print("Woohoo, the user is linked with Facebook!")
}
}
}
}
}
答案 0 :(得分:0)
你很可能直接投射到PFUser。仅对密切相关的类型(如NSNumber和Int)支持强制转换。
很可能你有一个PFUser类可以使用init方法初始化,该方法将某种字典作为参数。如果是这种情况,CFDictionary和NSDictionary基本上是一回事。
如果不是这种情况,那么您需要自己编写代码来创建PFUser并使用从NSDictionary手动提取的数据填充它。