2010-04-09 4 views
0

J'ai renommé une classe UITableViewController dans Xcode, qui était utilisée comme classe parente dans un XIB. L'Interface Builder utilise toujours l'ancien nom de cette classe et il compile et fonctionne correctement. Interface Builder ne voit pas le nouveau nom de la classe et quand j'essaie de taper manuellement, il compile et me donne une exception à l'exécution: "Classe inconnue ... dans le fichier Interface Builder."Objective-C Interface Builder ne voit pas la classe renommée

Existe-t-il un moyen de mettre à jour le nom de classe dans Interface Builder?

Merci

Répondre

0

Avez-vous essayé de sélectionner "Fichier -> Recharger Tous Class Files" dans Interface Builder? Peut-être que ça devrait marcher!

+0

Je ne vois pas cette option dans le menu Fichier lorsque je suis dans l'interface de création. Ce qui donne? – TheJeff

0

vous pouvez essayer ...

  1. propre et projet de reconstruction
  2. supprimer du projet et XIB créer une nouvelle avec une nouvelle classe
  3. classe et suppression du projet à la fois XIB (référence), les copier Ajouter un autre et nouveau fichier avec interface utilisateur dans votre projet XIB et copier tout de l'ancien fichier de classe au nouveau fichier de classe ...

Un de ces trois devrait fonctionner ...

0

Fermez complètement votre Interface Builder.

Et ouvrez ce XIB à partir de Xcode.

Ensuite, il affichera votre classe renommée.

0

J'ai parfois des problèmes avec IB ne notant pas les changements dans les fichiers de classe. Ce que je fais ensuite est de faire glisser le fichier .h de XCode vers la fenêtre avec le fichier .xib dans Interface Builder. Cela met à jour la définition de classe.

Vous pouvez toujours rouvrir Interface Builder, mais la solution ci-dessus est plus rapide.

Questions connexes