【问题标题】:Swift segue to another View Controller in functionSwift segue 到函数中的另一个视图控制器
【发布时间】:2016-09-16 19:07:57
【问题描述】:

您好,我曾多次尝试通过使用教程来切换到另一个视图控制器,但它们不起作用。请有人给我关于如何设置和调用 segue 到我的下一个视图控制器的明确说明。请记住,此代码不会在当前视图控制器类中。

该函数在我的播放器死亡时运行,因此我希望出现另一个视图控制器。功能是:

 func playerHitSquare(player:SKSpriteNode, level1: Enemy){

    timer.invalidate()
    removeAllChildren()
}

我要访问的视图控制器名为 FinishViewController,标识符为 Finish,当前视图为 GameViewController。

【问题讨论】:

  • 您在使用界面生成器吗?如果是这样,只需使用 performSegue(identifier:)
  • 到目前为止您尝试过什么?添加不起作用的代码以及问题描述,答案将更加具体。
  • 执行 segue 不起作用

标签: ios swift function segue xcode-storyboard


【解决方案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)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-11
      • 1970-01-01
      • 2016-05-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多