在Swift

时间:2015-08-18 16:35:33

标签: ios swift

我通常会使用segue切换视图控制器,但我认为我不能使用segue来处理我正在做的事情。当游戏结束时我会发出警告,告诉用户游戏已结束。用户可以在警报视图上点按两个按钮。一个是“再试一次”,另一个是“主菜单”。当用户点击“主菜单”时,它切换到主视图控制器。但是,当我使用“instantiateViewControllerWithIdentifier”时,每次用户点击“主菜单”时,它都会创建该主视图控制器的新实例。如何让警报视图中的“主菜单”按钮切换到主视图控制器的原始实例?这是我的代码:

gameOverAlert.addAction(UIAlertAction(title: "Main Menu", style: .Default, handler: { (action: UIAlertAction!) in
        self.ReturnToMainMenu()
    }))

func ReturnToMainMenu(){
    var storyboard : UIStoryboard = UIStoryboard(name: "Main", bundle: nil)

    let Main = self.storyboard!.instantiateViewControllerWithIdentifier("Main") as! ViewController

    self.presentViewController(Main, animated:true, completion:nil)
}

1 个答案:

答案 0 :(得分:1)

关闭您呈现的视图控制器(您的游戏),以便它显示您之前的视图控制器(主菜单)。

返回主菜单时,self.dismissViewControllerAnimated(false, completion: nil)