Программный запуск раскручивания - PullRequest
0 голосов
/ 29 апреля 2019

Я делаю приложение, которое переходит на другой экран при нажатии кнопки «Перейти».Через 3 секунды экран становится черным.Затем, через 6 секунд, я хочу, чтобы он вернулся к главному экрану, не нажимая кнопку, но пока не знаю, как заставить это работать.контроллер для кнопки выхода, чтобы создать переход, но я не знаю, как вызвать его в коде.

Вот код, который есть в моем GameViewController, связанный с переходом:

importUIKit импорт SpriteKit импорт GameplayKit

класс 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, содержащий функцию, которую я хочу развернуть в следующем:

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 просто имеет переход от первого экрана к экрану игры.

Я просто хочу, чтобы моя программа работала, я знаю, что упускаю что-то простое.Спасибо.

1 Ответ

2 голосов
/ 29 апреля 2019

Вам нужно сделать 3 вещи:

  1. Найдите свой переход в представлении Схема документа слева.Нажмите на него.
  2. В инспекторе атрибутов справа установите Идентификатор на unwindToMainMenu.
  3. Позвоните self.performSegue(withIdentifier: "unwindToMainMenu", sender: self), когда выхочу вызвать его.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...