iOS bloc avec la valeur de retour

Je suis à l'aide d'un bloc de Facebook SDK. Il retourne un dictionnaire. Je veux que le dictionnaire en tant que valeur de retour d'une méthode. Je suis d'essayer d'envelopper ma tête autour de l'ensemble du bloc de concept, mais besoin d'un coup de pouce dans la bonne direction.

Le bloc:
(l'argument du bloc est une chaîne userFBid)

-(NSDictionary*) getMutualFBFriendsWithFBid:(NSString*)fbID {

[FBRequestConnection startWithGraphPath:[NSString stringWithFormat:@"/%@/mutualfriends/%@", [[PFUser currentUser] objectForKey:kFbID],userFBid]
                    parameters:nil
                             HTTPMethod:@"GET"
                      completionHandler:^(
                                          FBRequestConnection *connection,
                                          id result,
                                          NSError *error
                                          ) {
                          result = (NSDictionary*)result;

//return result;                              
       }];

}

Comment puis-je obtenir la valeur de retour?

J'ai essayé de chercher sur google, mais je ne peux pas obtenir ma main autour d'elle.

J'apprécierais toute pointeur dans la bonne direction.

EDIT:
La question principale est la suivante: j'ai besoin de le gestionnaire d'achèvement pour appeler une méthode d'une autre classe... comment faire?

  • Les demandes sont faites asynchrone, donc vous devriez processus de "résultats" du dictionnaire de bloc ou de créer une méthode supplémentaire et de l'appeler avec la dictionnaire comme un argument.
  • Je suis en utilisant le même "résultat" dans des classes différentes, donc je préfère être en mesure à l'appeler et utiliser le résultat de ces différentes classes. Essaye de comprendre comment.
  • Vous pouvez stocker le result dans votre variable d'instance publique, et de l'accès au sein de votre d'autres classes. Est-ce que vous visez?
  • yup quelque chose comme ça oui. Voir modifier ci-dessus. Je dois mettre cette méthode dans une classe Singleton et utiliser le résultat dans une autre classe. Donc, vous êtes en quelque chose, juste à essayer de comprendre comment le faire. Je ne peux pas imaginer, je viens d'attribuer une propriété publique de la classe Singleton et d'obtenir que chaque fois que j'en ai besoin, puis le bloc va être appelé?
  • Je ne comprends pas: pourquoi voulez-vous voulez l'appeler completionHandler's block ailleurs?
  • je suis à l'aide de cette méthode au dans une classe Singleton afin d'éviter une réécriture dans de nombreuses autres classes. J'ai donc dans un seul endroit. Donc, exemple, dans les deux autres classes, j'ai besoin de la le résultat de cette même méthode, et utiliser le résultat différemment. Donc quand il se termine, je peux mettre à jour l'INTERFACE utilisateur dans les autres classes. Suis-je en approchant de la mauvaise façon?
  • Ok, voir mon édité répondre
  • c'est exactement ce que je cherchais. Je viens également édité à ma question, et vous avez répondu 🙂 Maintenant, je vais essayer de la mettre en œuvre, qui fait beaucoup plus de sens. Merci!

InformationsquelleAutor B-Man | 2014-04-05