关闭(或弹出)我手动添加的 NavigationController 不起作用
Posted
技术标签:
【中文标题】关闭(或弹出)我手动添加的 NavigationController 不起作用【英文标题】:Dismissing (or popping) a NavigationController I added manually does not work 【发布时间】:2015-07-09 21:31:03 【问题描述】:在我的 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 并显然将其添加到导航堆栈中,因为我可以使用导航栏上的后退按钮返回并随后关闭视图控制器。
问题是,我不想使用导航栏。事实上,我想隐藏后退按钮。不幸的是,当我尝试使用它应该使用的方法关闭视图控制器时,它什么也不做。我已经尝试使用这两种方法来关闭视图控制器:
[self dismissViewControllerAnimated:YES completion:nil];
[self.navigationController popViewControllerAnimated:YES];
我做错了什么?谢谢。
【问题讨论】:
你试图将导航控制器推入导航控制器? 我什至没有注意到!这解决了我的问题,谢谢。 我将其发布为答案。 【参考方案1】:您正在尝试将导航控制器推送到导航控制器中,这不会很好地结束。
[(UINavigationController*)self.window.rootViewController pushViewController:navigationController animated:NO];
可能需要改成:
[(UINavigationController*)self.window.rootViewController pushViewController:videoPlaybackViewController animated:NO];
【讨论】:
以上是关于关闭(或弹出)我手动添加的 NavigationController 不起作用的主要内容,如果未能解决你的问题,请参考以下文章
是否有可能在Android中单击图像时显示Toast消息或弹出窗口?
用jquery代码如何实现当我点击“查看”按钮时,在弹出窗口或弹出页面,显示数据库的详细数据