关闭 Storyboard 上的模态视图控制器
Posted
技术标签:
【中文标题】关闭 Storyboard 上的模态视图控制器【英文标题】:Dissmis a modal viewcontroller on a Storyboard 【发布时间】:2012-12-21 11:20:33 【问题描述】:我正在使用最新的 SDK 开发 iPhone 应用程序。
我不知道如何关闭 ViewController。我添加了一个后退按钮,这就是我所做的:
- (IBAction)backButtonClicked:(id)sender
[self.navigationController dismissModalViewControllerAnimated:YES];
我也试过了:
[self.navigationController popViewControllerAnimated:YES];
但两者都有效。我添加了一个断点,它会停在上面。
我使用Modal segue
导航到这个 ViewController。
如何以编程方式关闭此视图控制器?
【问题讨论】:
[self dismissViewControllerAnimated:YES 完成:nil]; 模态视图控制器不在导航控制器中,因此它的 navigationController 属性为零,因此您的代码行什么也不做 【参考方案1】:试试[self dismissViewControllerAnimated:YES completion:nil];
【讨论】:
【参考方案2】:- (IBAction)backButtonClicked:(id)sender
[self.presentingViewController dismissViewControllerAnimated:YES
completion:nil];
【讨论】:
已弃用 - 请参阅 Levi 的回答【参考方案3】:正在模态显示的 VC 是您自己的视图控制器子类的实例,还是您将其包装在 UINavigationController 中?如果是前者,请尝试
[self dismissModalViewControllerAnimated:YES];
[self.presentingViewController dismiss...]
也可以,但仅适用于 ios 5+
【讨论】:
dismissModalViewController 已弃用【参考方案4】:创建一个自定义segue,然后按钮动作选择自定义segue http://jeffreysambells.com/2014/02/19/dismissing-a-modal-view-using-a-storyboard-segue
【讨论】:
以上是关于关闭 Storyboard 上的模态视图控制器的主要内容,如果未能解决你的问题,请参考以下文章
条形按钮项目能否同时连接到 IBAction 和 StoryBoard 到模态视图控制器?