我通常会使用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)
}
答案 0 :(得分:1)
关闭您呈现的视图控制器(您的游戏),以便它显示您之前的视图控制器(主菜单)。
返回主菜单时,self.dismissViewControllerAnimated(false, completion: nil)