Il criptico warning riportato nel titolo, ovvero “wait_fences: failed to receive reply: 10004003″, può comparire nella Console quando si tenta di fare il push o il presenti di una view prima che un’altra (classico esempio una alertview) sia effettivamente dismessa.
Essendo la presentazione e la dismissione di una alertview animate, non attendere che questa animazione sia completata, prima di caricare un’altra view, può rappresentare un problema, e Xcode ce lo segnala con questo avviso nella Console.
La soluzione sarà quindi semplicemente quella di usare il metodo didDismissWithButtonIndex: (grazie all’UIAlertViewDelegate) per il resto del codice che dev’essere eseguito dopo aver lanciato il dismissWithClickedButtonIndex:animated:
Simmetricamente, se si mostra un alertview per far attendere un caricamento all’utente, bisognerà aspettare che l’alertview sia effettivamente presentata per eseguire il codice che carica il contenuto, ovvero usando un didPresentAlertView. Questo eviterà comportamenti non fluidi nell’animazione, anche se non si rischia di ottenere lo stesso errore che nel caso precedente.