2010-09-05 11 views
1

J'ai ajouté une recherche d'index à un UITableView soutenu par les données de base. la recherche fonctionne très bien, mais après avoir navigué vers le tableView je reçois cette erreur:sélecteur non reconnu envoyé à l'instance

-[NSSQLRow controllerDidChangeContent:] : unrecognized selector sent to instance 0x815edf0

je peux publier plus de code si cela est trop peu d'informations pour continuer.

Merci pour toute aide

Répondre

4

Dans Xcode (3), activez:

Exécuter> Arrêter sur les exceptions Objective-C

exécuter votre programme en débogage. Finalement, ce qui se passe est qu'un objet (objc) est demandé pour exécuter un message auquel il ne répond pas (c'est-à-dire qui n'est pas implémenté). En général, cela se produit comme une erreur du programmeur (au moins, pour moi), comme un argument passé comme un autre type, qui glisse dans un conteneur cast, id ou objc_object (par exemple, n'importe quelle classe de collection - NSArray, NSSet, NSDictionary).

Parfois cela se produit si vous oubliez d'implémenter la méthode d'instance.

Parfois, cela se produit si vous testez une version antérieure du logiciel, qui n'a pas implémenté la méthode d'instance (c'est-à-dire qu'elle a été ajoutée dans une version suivante).

+0

merci pour votre réponse. après Run> Stop sur Objective-C exceptions J'ai l'erreur suivante: - [NSSQLRow controllerDidChangeContent:]: sélecteur non reconnu envoyé à l'instance 0x6d6e190 Je vais voir si je peux trouver exactement ce qui provoque cette erreur. – hanumanDev

+10

si vous tapez 'po 0x6d6e190' (l'adresse réelle changera) dans le débogueur, il vous dira quel objet est envoyé le mauvais sélecteur. Si vous faites défiler la pile du débogueur, il vous montrera la ligne de votre code causant l'erreur. – TechZen

+0

+1 pour l'astuce concernant 'po 0x6d6e190'! –

Questions connexes