Swift segue 到函数中的另一个视图控制器
Posted
技术标签:
【中文标题】Swift segue 到函数中的另一个视图控制器【英文标题】:Swift segue to another View Controller in function 【发布时间】:2016-09-16 19:07:57 【问题描述】:您好,我曾多次尝试通过使用教程来切换到另一个视图控制器,但它们不起作用。请有人给我关于如何设置和调用 segue 到我的下一个视图控制器的明确说明。请记住,此代码不会在当前视图控制器类中。
该函数在我的播放器死亡时运行,因此我希望出现另一个视图控制器。功能是:
func playerHitSquare(player:SKSpriteNode, level1: Enemy)
timer.invalidate()
removeAllChildren()
我要访问的视图控制器名为 FinishViewController,标识符为 Finish,当前视图为 GameViewController。
【问题讨论】:
您在使用界面生成器吗?如果是这样,只需使用 performSegue(identifier:) 到目前为止您尝试过什么?添加不起作用的代码以及问题描述,答案将更加具体。 执行 segue 不起作用 【参考方案1】:如果你使用的是导航控制器,你可以调用
func popViewControllerAnimated(_ animated: Bool) -> UIViewController?
删除当前的VC,然后
func pushViewController(_ viewController: UIViewController, animated animated: Bool)
将所需的视图控制器添加到导航堆栈并使其处于活动状态。请记住,您可能需要向视图控制器类的 viewDidLoad 或 viewDidAppear/viewDidDisappear 添加代码,具体取决于
【讨论】:
【参考方案2】:如果你使用的是故事板,你可以调用
self.performSegue(withIdentifier: "yourSegueIdentifier", sender: self)
在情节提要中,您必须通过控制连接视图控制器 - 从一个 VC 的顶部拖到下一个 VC 并为其指定标识符名称 (yourSegueIdentifier
)。
【讨论】:
以上是关于Swift segue 到函数中的另一个视图控制器的主要内容,如果未能解决你的问题,请参考以下文章
通过 Collection View Cell Swift 中的 segue 将图像传递给另一个视图控制器