Xcode Swift 3:定时器和Segue查看控制器错误

时间:2016-10-30 06:16:34

标签: swift xcode timer segue

此代码位于ViewController 1中.goToMainUI被分配给ViewController 1和2之间的segue连接ID。此外,ViewController 2的故事板ID是相同的(goToMainUI)。计时器完成后,出现错误,ViewControllers不会切换。谁知道问题是什么?谢谢!

override func viewDidLoad() {
        super.viewDidLoad()

    let timer = Timer.scheduledTimerWithTimeInterval(8.0, target: self, selector: #selector(timeToMoveOn), userInfo: nil, repeats: false)

    func timeToMoveOn() {
        self.performSegue(withIdentifier: "goToMainUI", sender: self)
    }

1 个答案:

答案 0 :(得分:1)

试试这段代码:

注意:在Swift 3中测试过代码。

第1步:首先设置故事板Segue Identifier

enter image description here

第2步:

   let emptyString = String() // Do nothing 

   override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.

    Timer.scheduledTimer(timeInterval: 8.0, target: self, selector: #selector(timeToMoveOn), userInfo: nil, repeats: false)

    }

    func timeToMoveOn() {
    self.performSegue(withIdentifier: "goToMainUI", sender: self)
   }

   override func prepare(for segue: UIStoryboardSegue, sender: Any?) {

    if (segue.identifier == "goToMainUI") {

    let dest = segue.destination as! viewTwo // viewTwo is your destination ViewController
    dest.emptyString = emptyString

        print("Segue Performed")

    }

}

在ViewTwo中添加以上viewDidLoad方法。

  var emptyString = String()