J'essaie de faire quelque chose d'un peu élaboré, mais quelque chose qui devrait être possible. Voici donc un défi pour tous vos experts (ce forum est un pack de beaucoup d'entre vous :)).
Je crée un "composant" Questionnaire, que je veux charger sur un NavigationContoller
(mon QuestionManagerViewController
). Le "composant" est un "vide" UIViewController
, qui peut charger différentes vues en fonction de la question à laquelle il faut répondre.
La façon dont je le fais est:
- Créez l'objet Question1View en tant que
UIView
sous - classe, en définissant certainsIBOutlets
. - Créez (en utilisant Interface Builder) le
Question1View.xib
(ICI EST O IS MON PROBLÈME EST PROBABLEMENT ). J'ai défini leUIViewController
et leUIView
pour être de la classe Question1View. - Je relie les prises avec le composant de la vue (en utilisant IB).
Je remplace le
initWithNib
monQuestionManagerViewController
pour ressembler à ceci:- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { if (self = [super initWithNibName:@"Question1View" bundle:nibBundleOrNil]) { // Custom initialization } return self; }
Lorsque j'exécute le code, j'obtiens cette erreur:
2009-05-14 15: 05: 37.152 iMobiDines [17148: 20b] *** Arrêt de l'application en raison d'une exception non interceptée '
NSInternalInconsistencyException
', raison: 'a-[UIViewController _loadViewFromNibNamed:bundle:]
chargé la plume "Question1View" mais la sortie de la vue n'a pas été définie.'
Je suis sûr qu'il existe un moyen de charger la vue à l'aide du fichier nib, sans avoir besoin de créer une classe viewController.