1
我一直在努力爭取一段時間,我已經接近有一個功能性應用程序,所以把我的頭髮拉出來。我從Facebook圖形請求中獲得了一些基本信息,並將其從字典中提取出來。然後我使用prepareforsegue將名稱傳遞給第二個視圖控制器。我計劃在各種不同場景中使用'姓名'作爲唯一標識符。在兩個視圖控制器之間傳遞變量時出現錯誤Swift
不幸的是,我收到一個錯誤,我不知道如何解決:'類型'UIStoryboardSegue'的值沒有成員'SecondViewController'。我已經在第二個視圖控制器中聲明瞭var:var destViewController:String!
任何指針將如此讚賞。我感到非常沮喪,因爲在這個工作之前,我無法轉向其他任何東西。
的代碼是在這裏:
let fbLoginManager : FBSDKLoginManager = FBSDKLoginManager()
fbLoginManager.loginBehavior = FBSDKLoginBehavior.web
fbLoginManager.logIn(withReadPermissions: ["public_profile","email"], from: self) { (result, error) -> Void in
if error != nil {
print(error?.localizedDescription)
self.dismiss(animated: true, completion: nil)
} else if (result?.isCancelled)! {
print("Cancelled")
self.dismiss(animated: true, completion: nil)
} else {
}
}
FBSDKGraphRequest(graphPath: "me", parameters: ["fields": "id, name, relationship_status, gender, location, education"]).start(completionHandler: { (connection, result, error) -> Void in
if (error == nil){
let fbDetails = result as! NSDictionary
print(fbDetails)
if let userDataDict = result as? NSDictionary {
let name = userDataDict["name"] as? String
func prepareForSegue(segue: UIStoryboardSegue!, sender: Any!) {
if (segue.identifier == "loginToHome") {
//Checking identifier is crucial as there might be multiple
// segues attached to same view
var destViewController = segue.SecondViewController as? SecondViewController;
destViewController.name = name
var bookUniverse = [String]()
}
}
}
}
感謝您的回答。現在,我只是想抓住這個名字。如果我使用類,你的意思是這樣的:class name { static let userName =「name」 } –
對不起,我有另一個問題,我很抱歉。我仍在學習。我在哪裏放課。在第一個頂部?非常感謝! –
所以你想要做的是在你的類實例化之下,你會這樣做:fileprivate var someVariableName:String = name。那麼你可以這樣做:destViewController.name = someVariableName – Jay