Open-view-controller beim Empfang von remote-Push-Benachrichtigung

Ich bin mit dem storyboard , und ich möchte zu öffnen, immer die gleiche Ansicht, wenn der Benutzer empfängt remote-push-Benachrichtigungen, auch die app im hintergrund läuft oder geöffnet werden. Die Ansicht, die ich präsentieren müssen, ist vier Ansichten nach der ersten view-controller-set in das storyboard. Ich lese diese Beiträge:

Wie kann ich das anzeigen eines modalen Ansicht in Antwort auf eine Mitteilung über ein neues Fenster? (kein Elternteil vc)

Öffnen Sie eine bestimmte Registerkarte anzeigen, wenn der Benutzer eine push-Benachrichtigung empfängt

So, hier ist mein code:

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {

    UINavigationController *navController = (UINavigationController *)self.window.rootViewController;
    notificacionViewController *menu = [navController.storyboard instantiateViewControllerWithIdentifier:@"notificacion"];

    //First item in array is bottom of stack, last item is top.
    navController.viewControllers = [NSArray arrayWithObjects:menu,nil];

    [self.window makeKeyAndVisible];


}

Aber wenn ich eine Benachrichtigung erhalten, die app stürzt ab mit dieser Fehlermeldung:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[locationViewController setViewControllers:]: unrecognized selector sent to instance 0x42ccd0'

locationViewController ist die view-controller-set als erste in das storyboard.

Vielen Dank.

  • Angenommen, "HomeViewController" ist das initial view controller im Storyboard, und nach dem Klick auf eine Schaltfläche, sind Sie jetzt in "SecondViewController" push-Methode. Nun, sind Sie immer eine Push-Benachrichtigung. Wollen Sie push "NotificationViewController" oder präsentieren Modal?
  • Modal, also ich bin mir nicht sicher, zu verstehen, Ihre Erklärung, Sie vorschlagen, um schieben Sie den Stapel bis ich notificacionViewController? Dank
InformationsquelleAutor theomen | 2012-11-16
Schreibe einen Kommentar