Ich versuche etwas Aufwändiges zu tun, aber etwas, das möglich sein sollte. Hier ist also eine Herausforderung für alle Experten da draußen (dieses Forum ist eine Menge von euch :)).
Ich erstelle eine Fragebogen- "Komponente", die ich auf eine NavigationContoller(meine QuestionManagerViewController) laden möchte . Die "Komponente" ist eine "leere" Komponente UIViewController, die je nach der zu beantwortenden Frage unterschiedliche Ansichten laden kann.
Ich mache es so:
- Erstellen Sie das Question1View-Objekt als
UIViewUnterklasse und definieren Sie einigeIBOutlets. - Erstellen Sie (mit dem Interface Builder) das
Question1View.xib(HIER IST, WO MEIN PROBLEM MÖGLICHERWEISE IST ). Ich habe sowohl dasUIViewControllerals auch dasUIViewder Klasse Question1View festgelegt. - Ich verbinde die Steckdosen mit der Ansichtskomponente (mit IB).
Ich überschreibe das
initWithNibvon mirQuestionManagerViewController, um so auszusehen:- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { if (self = [super initWithNibName:@"Question1View" bundle:nibBundleOrNil]) { // Custom initialization } return self; }
Wenn ich den Code ausführe, wird folgende Fehlermeldung angezeigt:
2009-05-14 15: 05: 37.152 iMobiDines [17148: 20b] *** Beenden der App aufgrund einer nicht erfassten Ausnahme '
NSInternalInconsistencyException', Grund: '-[UIViewController _loadViewFromNibNamed:bundle:]Die Schreibfeder "Question1View" wurde geladen, aber der Ansichtsausgang wurde nicht festgelegt.'
Ich bin sicher, dass es eine Möglichkeit gibt, die Ansicht mithilfe der NIB-Datei zu laden, ohne eine viewController-Klasse erstellen zu müssen.













