dismissViewController 或 popViewController 都不起作用
Posted
技术标签:
【中文标题】dismissViewController 或 popViewController 都不起作用【英文标题】:Neither dismissViewController or popViewController are working 【发布时间】:2014-11-29 18:49:25 【问题描述】:这应该很简单,但是我无法弄清楚这非常令人沮丧。
我有 2 个视图控制器,每个都嵌入在导航控制器中,在第二个 VC 上,我有一个按钮,当按下它时应该关闭/弹出这个视图并返回。这两种我都试过了,都不管用:
[self dismissViewControllerAnimated:YES completion:nil];
[self.navigationController popViewControllerAnimated:YES];
请帮忙?
【问题讨论】:
不明白——请改进问题(易读性!) 似乎不是您为关闭或弹出操作编写的代码的问题 :) 可能与导航堆栈有关 你是如何嵌入导航控制器的 您在第一个视图控制器中使用什么代码转到第二个视图控制器?你能把那个代码贴在这里吗?您如何前进对于弄清楚如何倒退至关重要。 第一个 VC 转到第二个所以我没有为此编写任何代码 【参考方案1】:如果使用 Push/Pop 导航方案: 确保将导航控制器正确嵌入到导航开始的视图控制器中。 并确保您使用 push segue 来显示第二个视图控制器。
另一方面:如果您使用模型 segue 来呈现视图控制器,则无需嵌入导航控制器,这将起作用
[self dismissViewControllerAnimated:YES completion:nil];
【讨论】:
以上是关于dismissViewController 或 popViewController 都不起作用的主要内容,如果未能解决你的问题,请参考以下文章
糟糕编程的后果:dismissViewController 与 popViewController
未调用dismissViewController 完成处理程序
将dismissViewController 与UIAlertController 一起使用
为 DismissViewController 添加通知而不进行子类化