我正在制作一个应用程序,在按下“开始”按钮时会转到另一个屏幕。 3秒后,屏幕变黑。然后6秒钟后我想让它放松回主屏幕而不必点击按钮,但到目前为止我不知道如何让它工作。
我已经从视图控制器拖动到退出按钮以创建展开segue,但我不知道如何在代码中调用它。
这是我在GameViewController中与segue相关的代码:
导入UIKit导入SpriteKit导入GameplayKit
class GameViewController:UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let skView = view as! SKView
let scene = GameScene(size: view.bounds.size)
//skView.showsFPS = true
scene.scaleMode = .resizeFill
scene.vc = self
skView.presentScene(scene)
}
@IBAction func unwindToMainMenu(sender: UIStoryboardSegue)
{
//let gameVeiwController = sender.source]
// Pull any data from the view controller which initiated the unwind segue.
}
现在这是我的GameScene类,包含我要解开segue的函数:
class GameScene: SKScene {
var vc: UIViewController?
private var circleNode : SKShapeNode?
var fingersDown: Int = 0
let maxFingers: Int = 4
var selectionStarted = false
var touchNodes = [UITouch:SKShapeNode]()
func startSelectionGame(){
selectionStarted = true
self.backgroundColor = UIColor.yellow
_ = Timer.scheduledTimer(withTimeInterval: 1.0, repeats: false) { timer in
//both dont work
self.vc!.performSegue(withIdentifier: "unwindToMainMenu", sender: self.vc)
self.vc?.performSegue(withIdentifier: "unwindToMainMenu", sender: self)
}
_ = Timer.scheduledTimer(withTimeInterval: 3.0, repeats: false) { timer in
self.backgroundColor = UIColor.black
self.changeColors()
}
}
Main.storyboard只有从第一个屏幕到游戏屏幕的segue。
我只想让我的程序正常运行,我知道我错过了一些简单的东西。谢谢。
你需要做3件事:
unwindToMainMenu
。self.performSegue(withIdentifier: "unwindToMainMenu", sender: self)
。