J'ai un NSSet objet que je veux passer dans un performSelector
-call:performSelector ne passera pas l'objet au sélecteur
NSSet *myNSSetObject = [self getSet];
if (myNSSetObject.count != 1)
return;
[self performSelector:@selector(myMethod:) withObject:myNSSetObject afterDelay:0.5];
Le problème est que l'objet arrive vide myMethod
. Comme performSelector conserve l'objet passé, je ne comprends pas ce qui ne va pas.
Ma méthode est définie comme suit
- (void)myMethod:(NSSet *)myNSSetParam {
NSLog(@"Set count: %d", myNSSetParam.count);
[do sth];
}
Le NSLog montre: nombre Set: 0
examiner plus en profondeur la question et a déjà suggéré le compte ci-dessus, l'objet NSSet est effectivement passé, mais perd son enregistrement (s).
NSSet ne conserve-t-il pas ses objets?
Oui c'est le cas. J'ai mis à jour la question pour montrer l'appel, merci. – iFloh