Frage

Ich bin versucht zu laden, eine temporäre, slide-in, Blick von einem anderen view-controller.Meine Anwendung view-Controller aufgebaut sind:

Application > Tab Bar Controller > TabBarItem > View Controller

In diesem view-controller habe ich eine Schaltfläche, die erfolgreich feuert eine Methode zum laden der temporären Ansicht:

- (IBAction)displayTimePickerViewForDayButton:(id)sender {

    NSLog(@"displayTimePickerViewForDayButton method entered.");

    // create the selector view controller and become the delegate
    WOTimePickerViewController *tpvc = [[WOTimePickerViewController alloc] initWithNibName:@"WOTimePickerView" bundle:nil];
    tpvc.delegate = self;
    tpvc.modalTransitionStyle = UIModalTransitionStyleCoverVertical;

    [self presentModalViewController:tpvc animated:YES];
    [tpvc release];
}

Ich habe überprüft, dass meine WOTimePickerViewController erfolgreich Rücksendung der init-Methode, aber die Aussicht, nie gibt Sie der viewDidLoad-Methode.

Also, wenn ich bei der Ansicht in IB, scheint es mit dem vc "Ansicht" - Eigenschaft.Wenn ich die Ansicht im simulator (von IB) macht es richtig.

Wenn ich die app von XCODE kann ich navigieren Sie zu der Ansicht auf meinem Knopf, und ein leerer weißer Bildschirm angezeigt wird (beachten Sie, dies ist nicht der weiße hintergrund der Ansicht, dass der laden soll).

War es hilfreich?

Lösung

Sie sollten es so machen ..

WOTimePickerViewController *tpvc = [[WOTimePickerViewController alloc] initWithNibName:@"WOTimePickerView" bundle:nil];
    tpvc.delegate = self;
UINavigationController *navCntrlr = [[UINavigationController alloc] initWithRootViewController:tpvc];
    navCntrlr.modalTransitionStyle = UIModalTransitionStyleCoverVertical;

    [self.navigationController presentModalViewController:tpvc animated:YES];
    [tpvc release];

Aber das Wichtigste ist, Sie fehlen ist, dass Sie tun es nicht richtig.

Sie sollten es mögen:

[self.navigationController presentModalViewController:tpvc animated:YES];

und wenn Sie die modalView Controller entlassen wollen, sollten Sie es tun mögen:

[self.navigationController dismissModalViewControllerAnimated:YES];

Andere Tipps

Ich denke, die modalTransitionStyle des view-Controllers gilt für modale Ansichten gezeigt von das view-controller.Also, wenn Sie verwenden möchten die UIModalTransitionStyleCoverVertical übergang zum anzeigen Ihrer modalen controller, Sie sollte set die modalTransitionStyle Eigenschaft der übergeordneten view-Controllers (self), nicht der neuen.

Ich habe keine Erfahrung mit dem modalTransitionStyle, aber vielleicht ist die Einstellung, die Immobilie, bevor die Ansicht geladen wird, was einige Probleme?Ich würde versuchen, kommentieren Sie es aus...

Es klingt wie alles ist richtig konfiguriert, IB.Wie lange, wie Sie Ihre Datei Besitzer der view-controller, und es ist Aussicht Steckdose gebunden ist, zu der Ansicht, Sie sollten gut sein.

Hoffe das hilft,

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