【问题标题】:swift Xcode 6 unwind segue action doesn't fireswift Xcode 6 unwind segue 动作不会触发
【发布时间】:2014-08-17 13:33:49
【问题描述】:

模态呈现的控制器(“Modal”)的“完成”按钮绑定到主控制器(“Main”)中定义的退出操作:

@IBAction func done(segue:UIStoryboardSegue) {}

“完成”按钮未触发!

我尝试了Unwind Segue in Xcode 6 Beta 4 的手动转场方法,并将“完成”按钮操作绑定到“模态”中的以下代码:

@IBAction func donePressed(sender: AnyObject) {
    performSegueWithIdentifier("unwind", sender: self)
}

也不行!

如果我删除标签栏控制器一切正常 - 这是错误还是限制?

P.S.有一个烦人的日志输出我无法摆脱:

2014-08-17 16:14:15.380 SwiftPhotoCards[9113:497540] 17545849:_UIScreenEdgePanRecognizerEdgeSettings.edgeRegionSize=13.000000

不知道它是否与问题有关,但我认为值得一提。

【问题讨论】:

  • 你试过 Xcode 6 beta 6 吗?你尝试过一个全新的 Swift 项目吗?展开转场通常由 Xcode 6 beta 5 修复。我能够在 Xcode 6 beta 6 的新 Swift Master-Detail 应用程序项目中设置展开转场 (@IBAction func done(segue:UIStoryboardSegue) {})。
  • 它在 beta 6 中也不起作用。我结束了将 segue 的类型从 modal 更改为 popover,现在它可以正常工作了。

标签: swift modal-dialog action segue xcode6


【解决方案1】:

我一直在努力解决可能是同一问题的问题(尽管我使用的是拆分视图而不是选项卡栏)并且能够通过将 Modal segue 设置为“Presentation: Current Context”而不是属性检查器中的“默认”:

(这是在您的屏幕截图中创建“主”到“导航控制器”的 Segue 箭头上的设置)。

【讨论】:

  • 你先生,是男人。实际上...我部分收回了这一点。使用标签栏控制器,它最终会在底部显示标签... ugh apple...
  • 这不仅限于 Swift。我在使用常规 Obj-C 从模态转场展开转场时遇到问题。 @payton 发布的解决方法有效,但正如之前的评论所报告的,选项卡显示在底部,允许用户导航离开应该是模式的视图。
猜你喜欢
  • 1970-01-01
  • 2014-07-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-30
  • 2023-04-08
  • 1970-01-01
  • 2015-06-09
相关资源
最近更新 更多