sen*_*nty 2 xcode ios segue swift unwind-segue
我试图了解展开转场是如何工作的。首先我创建了 3 个 ViewController。
GlobalVC
-LoginVC
-RegisterVC
Run Code Online (Sandbox Code Playgroud)
我将初始页面设置为 GlobalVC(只有经过身份验证的用户才能看到)。我设置了一个segue:
GlobalVC to LoginVC打电话globalToLogin又LoginVC to RegisterVC打电话loginToRegister。这是我的故事板:
对于 registerToLogin 方向,我使用了这个解决方法(在 RegisterVC 中),但看起来有点难看。
@IBAction func unwindToLogin(sender: AnyObject) {
//Dismiss View
dismissViewControllerAnimated(true, completion: nil)
}
Run Code Online (Sandbox Code Playgroud)
然而,现在我试图直接从LoginToGlobal
首先,我选择登录按钮,将其拖到 LoginVC:
@IBAction func loginButton(segue: UIStoryboardSegue) {
performSegueWithIdentifier("unwindToGlobal", sender: self)
}
Run Code Online (Sandbox Code Playgroud)
设置好后segue: UIStoryboardSegue,现在就可以右键退出了。但是,我在这里感到困惑。无论我尝试将 Exit 内的圆圈拖动到什么位置,都会出现错误:
由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,>原因:“接收器(0x7fdd2068a480>)没有标识符为“unwindToGlobal”的segue
我应该将圆圈拖到哪里?(我一直看到Unwind segue to 'Exit')
展开操作方法在目标视图控制器中定义(例如在 中GlobalVC)。
@IBAction func unwindToGlobal(segue: UIStoryboardSegue) {
// this may be blank
}
Run Code Online (Sandbox Code Playgroud)
然后,当您将按钮连接到此操作时,您不会拖动到代码示例,而是拖动到场景上方的“退出插座”图标:
有关更多屏幕快照,请参阅此答案。
| 归档时间: |
|
| 查看次数: |
1770 次 |
| 最近记录: |