0
У меня есть цикл for-in и некоторый код вне этого. Я хочу, чтобы этот фрагмент кода выполнялся после завершения цикла. Как я могу это сделать? Это выглядит так:Блок для ввода-вывода
for item in array {
...
}
action()
EDIT: это целый код. На самом деле segue вызывается до создания всех объектов.
// facebook friends
let fbRequest = FBSDKGraphRequest(graphPath:"me/friends", parameters: nil);
fbRequest.startWithCompletionHandler { (connection : FBSDKGraphRequestConnection!, result : AnyObject!, error : NSError!) -> Void in
if error == nil {
let data : NSArray = result.objectForKey("data") as! NSArray
for item in data {
print(item)
let queryIn1 = PFQuery(className:"Friendship")
queryIn1.whereKey("toUser", equalTo: PFUser.currentUser()!.username!)
queryIn1.whereKey("fromUser", equalTo: item["name"] as! String)
let queryOut = PFQuery(className:"Friendship")
queryOut.whereKey("fromUser", equalTo: PFUser.currentUser()!.username!)
queryOut.whereKey("toUser", equalTo: item["name"] as! String)
let query = PFQuery.orQueryWithSubqueries([queryIn1, queryOut])
query.findObjectsInBackgroundWithBlock {
(objects: [AnyObject]?, error: NSError?) -> Void in
if error == nil {
if objects!.count == 0 {
let request = PFObject(className: "Friendship")
request["fromUser"] = PFUser.currentUser()!.username!
request["toUser"] = item["name"] as! String
request["status"] = "approved"
request.saveInBackgroundWithBlock{(success, error) -> Void in
print(item["name"] as! String)
globalClass.myFriends.append(item["name"] as! String)
globalClass.myFriends = globalClass.myFriends.sorted { $0.localizedCaseInsensitiveCompare($1) == NSComparisonResult.OrderedAscending }
}
} else {
}
}
}
}
self.defaults.setObject(true, forKey: "FB")
globalClass.facebook = true
self.performSegueWithIdentifier("firstFriends", sender: self)
UIApplication.sharedApplication().endIgnoringInteractionEvents()
self.spinningView.hidden = true
} else {
}
}
что происходит? не работает ли это как показано? Потому что это нужно. – Nishant
Ну, я думаю, что весь цикл не выполняется до того, как будет вызвано действие. Если это невозможно, это может быть что-то еще. – Vincent
Выполняете ли вы какой-то асинхронный код внутри цикла? – HAS