- Get root navigation controller
AppDelegate *delegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
UIViewController *rootController = [[delegate window] rootViewController];
UINavigationController *rootNavigationController = (UINavigationController *)rootController;
UIViewController *ctrl = [UIViewController new];
UINavigationController* navigationController = [[UINavigationController alloc] initWithRootViewController:ctrl];
UIViewController *presentingViewController = RCTPresentedViewController();
[presentingViewController presentViewController:navigationController animated:FALSE completion:nil];
- (UIViewController*) topMostController {
UIViewController *topController = [UIApplication sharedApplication].delegate.window.rootViewController;
while (topController.presentedViewController) {
topController = topController.presentedViewController;
}
return topController;
}