2009-09-27 7 views
-1

Je travaille sur une application iPhone (premier vrai projet de programmation) et j'ai eu deux vues qui iraient dans des onglets dans des applications distinctes pour les construire, où ils fonctionnent bien. Puis je les ai rajoutés dans le projet principal; Les vues de table provoquent un crash avec un numberOfRowsInSection] unrecognized selector sent to instance 0xXXXXXX alors j'ai isolé l'autre vue pour y corriger d'abord les erreurs. J'utilise xibs. Mais d'un autre côté, lorsque je clique sur un bouton qui déclenche une méthode personnalisée, j'obtiens un *** -[UIViewController methodName]: unrecognized selector sent to instance 0x####XX0 comme le dernier. Ce qui m'intrigue aussi, c'est que la console n'imprime rien d'autre à part ces erreurs; J'ai NSLogs() partout et ils n'apparaissent pas, même dans l'appDelegate. Ils apparaissent cependant quand ils sont dans le principal. (En raison du cycle de vie correct de l'application ?: l'erreur arrive en premier et je ne vois pas mes NSLogs)La console ne sera pas imprimée, seulement "... sélecteur non reconnu envoyé à l'instance 0x #### XX0" Erreurs d'exécution

Les messages de sélecteur non reconnus sont consignés en raison de méthodes. J'ai toutes mes déclarations synthétisées et j'ai cherché des questions ici, mais elles ne sont pas comme les miennes (je pense.)

+0

J'ai depuis supprimé la deuxième vue de son xib et la place dans le xib principal, avec un objet UIViewController ajouté dont la classe est définie sur ma sous-classe. Maintenant, ça marche, et je passe à la partie suivante. Je pense que j'ai oublié UIViewController d'une manière ou d'une autre à partir des xibs. – JoePasq

Répondre

0

J'ai depuis supprimé la deuxième vue de son xib et la place dans le xib principal, avec un objet UIViewController ajouté dont la classe est définie sur ma sous-classe. Maintenant, ça marche, et je passe à la partie suivante. Je pense que c'est parce que j'ai omis UIViewController d'une manière ou d'une autre à partir des xibs

Comme indiqué plus haut, presque tout est en train d'être mis au point maintenant. Merci quand même et idiot de m'avoir posé une telle question.

1

Lorsque vous dites que vous avez ajouté les fichiers XIB "dans le projet principal", cela me fait penser que c'est le zone de préoccupation probable.

Je pense qu'il se peut que ces fichiers XIB continuent de penser qu'ils sont des classes de l'ancienne application (où vous les avez initialement créés). Je suggère:

  • L'ouverture de chaque fichier et supprimer toutes XIB les connexions
  • Vérifiez ensuite le nom de classe du « propriétaire du fichier » et vérifier que c'est la classe dans votre nouvelle application. Si les noms de classe sont les mêmes dans l'ancienne application que la nouvelle, passez à autre chose, puis revenez à nouveau.
  • Espérons que cela va le trier. Si ce n'est pas le cas, essayez de créer un tout nouveau fichier XIB, puis construisez-le de la même manière que les autres. Si cela ne fonctionne toujours pas, le problème est dans la classe; Si vous nous le faites savoir, nous pourrons revenir avec d'autres idées dans ce domaine.

Espérons que ça aide!

+0

Va essayer; de retour dans un peu et merci. – JoePasq

+0

Non ce n'est pas ça. :( La deuxième vue est une sous-classe de UIViewController, n'a pas de variable d'instance, et ne dispose que de plusieurs méthodes: chaque méthode correspond à un bouton, ou est un appel délégué (UIAlertView ....). et tout se montre bien, mais en cours d'exécution, il se bloque. – JoePasq

Questions connexes