dismissviewcontrolleranimated achèvement de ne pas appeler l'achèvement des travaux sur uiimagepickercontroller
C'est le code que j'ai:
-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
[picker dismissViewControllerAnimated:YES completion:^(void){
NSLog(@"Test");
}];
}
Il rejette le modèle-vue-contrôleur, mais à ne pas faire appel à l'achèvement de l'argument. Suis-je en train de faire quelque chose de mal?
OriginalL'auteur Andrew | 2012-04-15
Vous devez vous connecter pour publier un commentaire.
void achèvement des gestionnaires sont remplis avec un simple^{
, je n'ai jamais vu votre syntaxe avant....La seule explication possible je peux trouver, c'est que votre image picker est rejetée par d'autres moyens, et que vous n'êtes pas, il est délégué (donc de ne pas recevoir les
didFinishPickingMediaWithInfo
message). Une autre possibilité pourrait être un échec dans le kit de développement à l'époque. Je sais que l'exécution d'un exemple rapide du projet, que la réalisation du bloc de feux comme prévu dans les deux modèles syntaxiques.Êtes-vous à l'aide de la droite de la bûche? le plus éloigné du bouton droit doit être sélectionné.
Cette syntaxe et de la syntaxe dans la question sont équivalentes. Tout de
^void (void){ NSLog(@"Test"); }
,^(void){ NSLog(@"Test"); }
, ou^{ NSLog(@"Test"); }
deviendra exactement le même Bloc. OIE,void
est assumée pour un Bloc du type de retour et les paramètres de la liste lorsque rien n'est spécifié.Eh bien mon dieu. En regardant en arrière, j'ai vraiment devrait supprimer... mais je ne peux pas. Je n'ai pas d'explication possible de l'achèvement du bloc ne mettrait pas le feu, autres que les jankyness avec la nouvelle API.
Je peux confirmer que si le point de vue du contrôleur que vous essayez de rejeter dans la méthode a déjà été rejeté, l'achèvement de bloc n'est pas exécutée.
OriginalL'auteur CodaFi