2011-09-28 5 views
3

de Possible en double:
unrecognized selector sent to instancesélecteur non reconnu envoyé à l'instance (iOS)

Eh bien ... comme tant d'autres, j'ai obtenu une erreur "sélecteur non reconnu envoyé à l'instance" ...

Le problème se produit lorsque j'appuie sur un bouton, par ex. dans ce cas:

-(IBAction)gotoTone:(id)sender 
{ 
    if(self.tone == nil) 
    { 
     Tone *toneMain = [[Tone alloc] 
           initWithNibName:@"Tone" bundle:[NSBundle mainBundle]]; 
     self.tone = toneMain; 
     [toneMain release]; 
    } 

    [self.navigationController pushViewController:tone animated:YES]; 
} 

L'erreur est: Mettre fin application en raison d'une exception non interceptée 'NSInvalidArgumentException', raison: '- [Tone gotoTone:]: sélecteur non reconnu envoyé à l'instance 0x531caa0'

L'erreur a commencé se produire après avoir inséré une nouvelle vue comme la première vue présentée à l'utilisateur ... En outre, j'utilise une barre de navigation et au début j'avais oublié d'aller dans MainWindow.xib et de changer le contrôleur de navigation à la nouvelle vue, mais cela est résolu à présent.

Vous pouvez voir mon code entier son:

Le .h dans lequel le fichier se produit: http://snipt.org/xnoO Le .m dans lequel le fichier se produit: http://snipt.org/xnoM

Ca ne me dérange pas tous les commentaires hors lignes, c'est juste jusqu'à ce que je l'ai corrigé ...

J'ai essayé de trouver une solution à cela en lisant d'autres cas de "sélecteur non reconnu envoyé à l'instance", mais je suppose que je ne vois pas la solution. J'ai vérifié mes IB-connects, j'ai nettoyé le projet et tel ...

Toute aide serait grandement appréciée

Répondre

1

Je pense que le problème est que vous envoyez la méthode gotoTone: un Tone objet, cependant cette méthode est définie dans l'objet Forside. Je ne suis pas sûr exactement pourquoi cela se produit, cependant je suggère de vérifier les connexions au sein de votre fichier xib.

0

Vous n'avez fourni aucune information sur la configuration de votre bouton, mais si le bouton est dans votre fichier .nib, il semble probable que l'identité de la cible du bouton est définie sur la mauvaise classe. Assurez-vous donc que la classe de l'objet auquel le bouton envoie son message est Forside plutôt que Tone.

6

J'ai rencontré ce problème et l'ai résolu simplement en reconnectant le bouton à l'IBAction dont le nom a été modifié auparavant. Tellement embarrassant.

Questions connexes