Since the NotificationsViewController is embedded in a navigation controller, you should be instantiating it and setting it as the window's root view controller,
- (void) application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
if ( application.applicationState == UIApplicationStateInactive || application.applicationState == UIApplicationStateBackground ) {
UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle: nil];
UINavigationController *nav = [mainStoryboard instantiateViewControllerWithIdentifier:@"Nav"];
[_window setRootViewController:nav];
}
}
Be sure to give the navigation controller an identifier that matches the one you use here in code. When the navigation controller is made the root view controller of the window, it will display its topViewController, which is presumably your NotificationsViewController.