关闭(或弹出)我手动添加的 NavigationController 不起作用

Dismissing (or popping) a NavigationController I added manually does not work

在我的 AppDelegate 中,我有以下代码在收到通知后执行:

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
UINavigationController *navigationController = (UINavigationController *)[storyboard instantiateViewControllerWithIdentifier:@"VideoPlayback"];

VideoPlaybackViewController *videoPlaybackViewController = (VideoPlaybackViewController *)[navigationController topViewController];
videoPlaybackViewController.publishing = YES;
[(UINavigationController*)self.window.rootViewController pushViewController:navigationController animated:NO];

成功调出新的 ViewController 并显然将其添加到导航堆栈,因为我可以使用导航栏上的后退按钮返回并随后关闭视图控制器。

问题是,我不想使用导航栏。事实上,我想隐藏后退按钮。不幸的是,当我尝试使用它应该使用的方法关闭 viewcontroller 时,它什么也不做。我试过使用这两种方法来关闭视图控制器:

[self dismissViewControllerAnimated:YES completion:nil];
[self.navigationController popViewControllerAnimated:YES];

我做错了什么?谢谢

您正试图将一个导航控制器推入另一个导航控制器,结果不会很好。

[(UINavigationController*)self.window.rootViewController pushViewController:navigationController animated:NO];

可能需要更改为:

[(UINavigationController*)self.window.rootViewController pushViewController:videoPlaybackViewController animated:NO];