J'ai un programme qui fonctionne normalement. Ensuite, j'ai téléchargé du code de http://github.com/matej/MBProgressHUD pour afficher un indicateur de progression lorsque je fais quelque chose.L'objet passe de NSMutableArray à NSData à NSString
C'est le code qui fait apparaître la barre de progression.
[HUD showWhileExecuting:@selector(myTask) onTarget:self withObject:nil animated:YES];
Cela montrera un indicateur de progression alors que la méthode myTask
est en cours d'exécution.
Ceci est le code de la méthode showWhileExecuting
.
- (void)showWhileExecuting:(SEL)method onTarget:(id)target withObject:(id)object animated:(BOOL)animated {
methodForExecution = method;
targetForExecution = [target retain];
objectForExecution = [object retain];
// Launch execution in new thread
taskInProgress = YES;
[NSThread detachNewThreadSelector:@selector(launchExecution) toTarget:self withObject:nil];
// Show HUD view
[self show:animated];
}
Si je l'utiliser pour appeler la fonction myTask
puis une de mes propriétés de classe va changer d'un NSMutableString
à un objet NSData
quelque part, puis plus tard il passera à un NSString
. Je ne vois nulle part dans le code qui change cela, donc c'est probablement une sorte de bug. La mémoire est-elle corrompue? Qu'est-ce qui cause cela?
Lorsque j'allume NSZombies, je peux voir que l'objet se transforme en NSZombie NSArray. –