2009-05-26 11 views
2

J'ai choisi le modèle d'application "basé sur la vue" dans Xcode. Le myProjectViewController.m a le code suivant:Comment puis-je créer une application basée sur une vue qui n'utilise pas de fichier nib?

/* 
// Implement loadView to create a view hierarchy programmatically, without using a nib. 
- (void)loadView { 
} 
*/ 

Cela semble bien. Mais: Le modèle a généré un fichier myProjectViewController.xib. Qu'est-ce que je ne comprends pas: Comment Xcode connecter le ViewController avec cette plume? Où est la partie dans le code du modèle qui dit: "Hey, charger ce myProjectViewController.xib maintenant!"? Je veux dire ... est-ce que je peux juste supprimer ce fichier nib non-voulu sans paramétrer quoi que ce soit d'autre?

Répondre

0

Vous pouvez simplement supprimer la plume et implémenter cette méthode. IB se connecte en utilisant le nom de la classe dans la NIb, dans IB vous définissez réellement une vue en tant que propriétaire du fichier de la vue. donc quand vous appelez initwithnib: "nibfilename" il sait de quoi vous parlez.

Les éléments sont câblés à l'aide IBOutlets et IBActions

+0

J'ai retiré le xib. Maintenant, il se bloque quand je lance. Y a-t-il quelque chose que je dois implémenter dans - (void) loadView? – Thanks

+0

comment créez-vous la vue et le chargez-vous? vous devez passer nil dans le constructeur initwithnib: – Bluephlame

+0

Je ne sais pas comment myProjectViewController est allumé. C'est juste là et est utilisé. Je ne vois aucun point de départ. Le délégué de l'application ajoute la vue de ce contrôleur de vue en tant que sous-vue à la fenêtre. Le délégué de l'application utilise également une plume. Là, il semblerait que cela créerait une instance de myProjectViewController, parce que dans l'App Delegate il y a une sortie pour cela. – Thanks

1

Vous pouvez vous référer à my answer-this question, où je décris les fichiers spécifiques qui doivent être modifiées pour faire complètement la génération programmatique de la hiérarchie de votre vue. En outre, certaines des références liées à dans les réponses à this question peuvent vous être utiles.