я хочу, и я не знаю, как = (закрыть мой граф блок FacebookSwift как закрыть блок
Моя проблема заключается в том, что я хочу, чтобы сохранить имя моего пользователя Facebook в переменной ., чтобы использовать его позже (другой вид контроллера), но я не могу, потому что мой блок закрыт после того, как я пытаюсь сохранить данные
Это мой делегат функции:
// Facebook Delegate Methods
func loginButton(connection: FBSDKLoginButton!, didCompleteWithResult result: FBSDKLoginManagerLoginResult!, error: NSError!) {
if (error != nil)
{
println("Error")
}
else {
println("User logged in")
self.returnUserData()
}
}
И это моя функция которые используют график facebook api
// Here my block that I want to close, maybe with completion closure inside
func returnUserData()
{
let graphRequest : FBSDKGraphRequest = FBSDKGraphRequest(graphPath: "me", parameters: ["fields": "id, name, first_name, last_name, picture.type(large), email"])
// Launch asynchronous function
var userName : String = "error"
graphRequest.startWithCompletionHandler({ (connection, result, error) -> Void in
if ((error) != nil)
{
// Process error
println("Error: \(error)")
}
else
{
println(result)
userName = result["first_name"] as! String
}
})
}
Может кто-нибудь мне помочь?
Вы можете добавить какую ошибку или какая у вас проблема? –
Done;) @thefredelement – Michal
Просто объявите переменную имени пользователя за пределами закрытия, чтобы вы могли получить к ней доступ в другом месте. –