1
我是新來的swift編程。我正在用Facebook登錄創建一個應用程序,它運行良好。問題是,我想在其他視圖控制器中檢索用戶詳細信息。我的問題是:Is it possible to store the user details and can be fetched to the entire app using NSUserDefaults using swift
如果是,然後告訴正確的方式來設置和加載用戶的詳細信息。 在我viewDidLoad中()使用NSUserDefaults存儲Facebook用戶詳細信息
let defaults = NSUserDefaults.standardUserDefaults()
defaults.setObject(self.facebookReadPermissions, forKey: "User")
NSUserDefaults.standardUserDefaults().synchronize()
在登錄按鈕:
@IBAction func btnlogin(sender: UIButton) {
var fbLoginManager : FBSDKLoginManager = FBSDKLoginManager()
fbLoginManager .logInWithReadPermissions(self.facebookReadPermissions, handler: { (result, error) -> Void in
if (error == nil){
var fbloginresult : FBSDKLoginManagerLoginResult = result
if(fbloginresult.grantedPermissions.contains("email"))
{
self.performSegueWithIdentifier("showView", sender: self)
self.fetchUserInfo()
var defaults: NSUserDefaults = NSUserDefaults.standardUserDefaults()
if let myEmail: AnyObject = NSUserDefaults.standardUserDefaults().objectForKey("User") {
println(myEmail)
}
fbLoginManager.logOut()
}
}
})
}
感謝@kandelvijaya爲你的建議,實際上我想從Facebook獲取用戶的詳細信息,如用戶名,電子郵件,Facebook的ID。當我使用Facebook sdk登錄時,所有的細節都想在本地存儲,並且我想要檢索值並使用println語句顯示爲o/p,因此用戶的詳細信息也可以用在其他一些視圖控制器中。有沒有可能 –
是的! NSDefaults是關鍵值對的全局容器。對於通常爲字符串的每個唯一鍵,您可以具有Int,Double,Char,String,基元數組和基元字典的值。原始數據表示舊的基本數據類型String,Int,Double。 – kandelvijaya
好吧,我知道了..但我沒有任何想法來實現代碼,你可以請建議我..我在問題中添加了整個代碼 –