使用故事板,我如何执行反向转场 return 到前一个屏幕?
With storyboards, how can I perform a reverse segue to return to the previous screen?
目前,我正在做一个需要多个屏幕的项目。当我从一个屏幕转换到另一个屏幕时,按下按钮时的默认转换是下一个屏幕向上上升以覆盖前一个屏幕。自然地,当我按下一个 "back" 按钮时,我想要这个 segue 的反转,屏幕向下下降,陶醉于前一个屏幕。我试图为此设计一些代码:
代码
每当我 link 一个 "back" 按钮到这个动作 segue,然后按下按钮,它总是会进入游戏的第一个屏幕,而不是前一个屏幕。目前,我只剩下后退按钮指向上一个屏幕,这给游戏带来了一种非常不自然的感觉,因为看起来所有屏幕都在彼此之上分层。有办法解决这个问题吗?
提前致谢。
您的代码需要更改为:
@IBAction func unwindSegue(segue: UIStoryboardSegue) { }
在您的操作中使用 segue
而不是 sender
。
如果您要展示 ViewController
,您需要关闭当前 ViewController
self.dismiss(animated: true, completion: nil)
或者,如果您在导航控制器中,您可以 "pop" 它:
self.navigationController?.popViewController(animated: true)
目前,我正在做一个需要多个屏幕的项目。当我从一个屏幕转换到另一个屏幕时,按下按钮时的默认转换是下一个屏幕向上上升以覆盖前一个屏幕。自然地,当我按下一个 "back" 按钮时,我想要这个 segue 的反转,屏幕向下下降,陶醉于前一个屏幕。我试图为此设计一些代码:
代码
每当我 link 一个 "back" 按钮到这个动作 segue,然后按下按钮,它总是会进入游戏的第一个屏幕,而不是前一个屏幕。目前,我只剩下后退按钮指向上一个屏幕,这给游戏带来了一种非常不自然的感觉,因为看起来所有屏幕都在彼此之上分层。有办法解决这个问题吗?
提前致谢。
您的代码需要更改为:
@IBAction func unwindSegue(segue: UIStoryboardSegue) { }
在您的操作中使用 segue
而不是 sender
。
如果您要展示 ViewController
,您需要关闭当前 ViewController
self.dismiss(animated: true, completion: nil)
或者,如果您在导航控制器中,您可以 "pop" 它:
self.navigationController?.popViewController(animated: true)