如何从 Xcode 10 和 Swift 4 中的界面构建器中解除模态序列 [重复]
Posted
技术标签:
【中文标题】如何从 Xcode 10 和 Swift 4 中的界面构建器中解除模态序列 [重复]【英文标题】:How can I dismiss a modal segue from interface builder in Xcode 10 and Swift 4 [duplicate] 【发布时间】:2018-11-01 21:20:47 【问题描述】:我在 ViewController 中添加了一个按钮。这个视图控制器是用模态转场激活的。 我怎样才能从界面生成器中消除它。我必须使用 IBAction 还是可以从界面生成器中完成?
【问题讨论】:
使用展开转场 请您再解释一下您的问题 @AbhinavJha 当然。我有一个带有元素列表的表格视图控制器,它由导航控制器包装。在此视图中,我在导航栏中有一个“+”按钮,用于创建新项目。我想在模态 segue 中打开新项目视图。没关系。现在在新视图中,我在导航栏中有一个取消按钮和一个保存按钮。我无法解除转场并关闭此视图。 @Kobazzo,请在下面找到我的答案 【参考方案1】:试试下面的代码
override func viewDidLoad()
super.viewDidLoad()
navigationItem.leftBarButtonItem = UIBarButtonItem(title: "Back", style: .plain, target: self, action: #selector(self.leftNavigationItemAction(_:)))
@objc func leftNavigationItemAction(_ sender: UIBarButtonItem) -> Void
self.dismiss(animated: true, completion: nil)
【讨论】:
【参考方案2】:斯威夫特 3:
present(UIViewController(), animated: true, completion: nil)
dismiss(animated: true, completion: nil)
Swift 2.2:
self.presentViewController(true, completion: nil)
隐藏/关闭视图控制器:
self.dismissViewControllerAnimated(true, completion: nil)
希望这会有所帮助,谢谢。
【讨论】:
谢谢粉丝。完美的解决方案。以上是关于如何从 Xcode 10 和 Swift 4 中的界面构建器中解除模态序列 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Xcode 中将 Swift 版本从 5 更改为 4?
在 Swift 4.2 Xcode 10 中使用动作扩展从 Safari 共享 PDF 文件失败
Xcode 10, Swift 4.2及iOS 12升级适配
Firebase Deeplink 不触发应用程序:continueUserActivity:restorationHandler,Swift 4.2 Xcode10。