Frage

Ich habe UIViewController in eine neue Klasse subclassed, PageViewController (Ich bin ein einfaches Buch app zu schreiben). Ich mag eine neue Ansicht aus einer Nib-Datei geladen hinzuzufügen und den folgenden Code verwenden. Es funktioniert.

PageViewController *viewController1 = [[UIViewController alloc] initWithNibName:@"Page1" bundle:nil];
[viewController1.view setUserInteractionEnabled:YES];
[self.view addSubview:viewController1.view];

Allerdings ist die erste Zeile ist falsch, weil ich alloc auf PageViewController Aufruf werden soll. Wenn ich es richtig (siehe unten), kompiliert der Code aber die xib Datei nicht geladen und die Aussicht ist nur transparent sein.

    PageViewController *viewController1 = [[PageViewController alloc] initWithNibName:@"Page1" bundle:nil];
[viewController1.view setUserInteractionEnabled:YES];
[self.view addSubview:viewController1.view];

Die PageViewController initWithNibName Methode wurde unkommentiert und nur die Standardeinstellung Einstellung self = [super initWithNibName: nibNameOrNil Bundle: nibBundleOrNil].

Was habe ich versucht: In der Seite1 Nib-Datei, ich habe versucht, die Datei-Besitzer Klasse zwischen PageViewController und UIViewController ändern. Ja, ich erinnerte sie zurück in die Ansicht Auslass danach zu verbinden.

Hilfe, bitte! Ich bin ratlos.

War es hilfreich?

Lösung

Haben Sie die Loadview-Methode in PageViewController außer Kraft gesetzt? Was passiert, wenn Sie NSLog die viewController1.view?

Tatsächlich im Interface Builder, müssen Sie die Datei des Besitzers PageViewController gesetzt, und eine Verbindung zu der Ansicht Sie im Interface Builder seiner Ansicht haben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top