** Maintenant, cette question doit être dupe, mais je ne le trouve pas. Redirection apprécié! **
Je veux utiliser un sélecteur sur une NSObject exemple , sans la nécessité d'une mise en oeuvre de protocole. Par exemple, il y a une catégorie de la méthode qui devrait fixer une erreur de propriété si le NSObject exemple, il est appelé sur la prend en charge. C'est le code, et le code fonctionne comme prévu:
if ([self respondsToSelector:@selector(setError:)])
{
[self performSelector:@selector(setError:) withObject:[NSError errorWithDomain:@"SomeDomain" code:1 userInfo:nil]];
}
Cependant, le compilateur ne voit pas de méthode autour de avec la setError: signature, donc il me donne un avertissement, pour chaque ligne contient l' @selector(setError:)
extrait:
Undeclared selector 'setError:'
Je ne veux pas avoir à déclarer un protocole pour se débarrasser de cet avertissement, car je ne veux pas que toutes les classes qui peuvent l'utiliser pour mettre en œuvre quelque chose de spécial. Juste par convention, je veux qu'ils aient une setError:
méthode ou propriété.
Est-ce faisable? Comment?
Cheers,
EP